標籤:
點擊tableView的cell,讓其滾到螢幕頂部,很多電商的分類別模組,都採用這種做法1. 範例程式碼
- (void)viewDidLoad {
[super viewDidLoad];
[self addTableView];
}
#pragma mark - 建立tableView
- (void)addTableView
{
UITableView *tableView = [[UITableView alloc]init];
tableView.frame = self.view.bounds;
tableView.delegate = self;
tableView.dataSource = self;
[self.view addSubview:tableView];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// 1.建立cell
static NSString *ID = @"cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:ID];
}
// 2.設定cell的資料
cell.textLabel.text = [NSString stringWithFormat:@"%ld",(long)indexPath.row];
return cell;
}
#pragma mark - 點擊cell調用
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES]; // 關鍵代碼
}
2. 參數說明:
UITableViewScrollPositionNone, 無所謂,置頂,置底都可以,只要最快出現在螢幕範圍內
UITableViewScrollPositionTop, 點擊的那行置頂
UITableViewScrollPositionMiddle, 點擊的那行置為中間
UITableViewScrollPositionBottom 點擊的那行置底
iOS 點擊tableView的cell,讓其滾到螢幕頂部