2013-08-05 25 views
3

我有一個UITableView在我看來。可以說tableView有100個索引。如果我向下滾動並選擇第50個索引,它將推向另一個視圖。總是從表的第一個索引顯示?

所以我想要的是,如果我從第二個視圖彈回到tableView視圖,tableView應該從第一個索引顯示。但是目前它的位置在我之前選擇的索引中。請參考下面的圖像以獲得更好的理解。

enter image description here

這裏的「智能」是第25屆index.If我選擇的智能,它推到另一個視圖(詳細視圖)。所以,如果我再次回到這個的tableView,這個表應該進行復位和顯示器第一視圖。我可以如何實現這一目標?我試圖重新加載表,它不工作。

請建議您的想法。

謝謝!!!

回答

4

嘗試這樣:

- (void)viewWillAppear:(BOOL)animated 
{ 
    [self.tableView scrollRectToVisible:CGRectMake(0, 0, 1, 1) animated:YES]; 
} 
+0

偉大的工作正常。謝謝!!! – NSUserDefault

2

你要問表視圖滾動到使用UITableViewScrollPositionTop滾動位置使用scrollToRowAtIndexPath:atScrollPosition:animated:的第一行。您可能希望在延遲後執行此操作,具體取決於您正在進行的其他動畫。

+0

謝謝!!!比較喬治的回答很簡單,而且工作完美。 – NSUserDefault

2

viewWillAppear方法中做任何事情,因爲它將是called當你come back

- (void)viewWillAppear:(BOOL)animated 
{ 
    [yourTableView.scrollView setContentOffset:CGPointMake(0,0)]; 
} 
+0

謝謝你很好的解決方案!工作很棒... – NSUserDefault

3

使用此顯示第一個索引tableview

NSIndexPath *myIndexPath = [NSIndexPath indexPathForRow:1 inSection:0]; 
    [self.tbl_presentation selectRowAtIndexPath:myIndexPath animated:YES scrollPosition:UITableViewScrollPositionTop]; 

我希望你這個代碼是有用的。

1

在導航到您想要保持突出顯示的另一個視圖並在視圖中顯示之前,保存行索引或值。

之後,當你再回到同樣的觀點則只需添加以下行:

// rowIndex is saved row value before navigating to another view. 
[tableView selectRowAtIndexPath:rowIndex 
         animated:NO 
       scrollPosition:UITableViewScrollPositionMiddle]; 

這將解決您的問題。

相關問題