总是从表的第一个索引显示?
我有一个UITableView
在我看来。 可以说, tableView
有100个索引。 如果我向下滚动并select第50个索引,则会推向另一个视图。
所以我想要的是,如果我从第二个视图popup到tableView视图,那么tableView应该从第一个索引中显示。但是目前它在我之前select的索引中。请参考下面的图像以获得更好的理解。
这里“智能”是第25个索引。如果我选择智能,它会推到另一个视图(详细视图)。所以如果我再次回到这个表视图,表应该从第一个视图重置和显示。我该如何实现? 我试图重新加载表,它不工作。
请提出你的想法。
谢谢!!!
尝试这样的事情:
- (void)viewWillAppear:(BOOL)animated { [self.tableView scrollRectToVisible:CGRectMake(0, 0, 1, 1) animated:YES]; }
使用这个在tableview
显示第一个索引。
NSIndexPath *myIndexPath = [NSIndexPath indexPathForRow:1 inSection:0]; [self.tbl_presentation selectRowAtIndexPath:myIndexPath animated:YES scrollPosition:UITableViewScrollPositionTop];
我希望这个代码对你有用。
您需要使用scrollToRowAtIndexPath:atScrollPosition:animated:
使用UITableViewScrollPositionTop
的滚动位置来查询表视图以滚动到第一行。 你可能想要延迟这样做,这取决于你正在进行的其他animation。
在viewWillAppear
方法中做任何事情,因为当你come back
时候会called
它。
- (void)viewWillAppear:(BOOL)animated { [yourTableView.scrollView setContentOffset:CGPointMake(0,0)]; }
在导航到您要保持突出显示的另一个视图并在视图中显示之前,保存行索引或值。
之后,当你回到相同的观点,然后添加下面的行:
// rowIndex is saved row value before navigating to another view. [tableView selectRowAtIndexPath:rowIndex animated:NO scrollPosition:UITableViewScrollPositionMiddle];
这将解决您的问题。