簡體   English   中英

在選定的單元格行隔離到TableView

[英]Segue back to TableView at selected cell row

我有一個UItableView可以選擇另一個視圖控制器。 我正在使用一個UITapGestureRecognizer,它可以選擇返回tableView。 此segue有效,但是我希望它可以segue回到最初選擇的表行的tableView。 我該如何完成?

編輯:編輯后的代碼

- (void)viewWillAppear:(BOOL)animated  {

 appDelegate = [[UIApplication sharedApplication] delegate];
 NSLog(@"%@", NSStringFromCGPoint(appDelegate.testCGPoint));

 [self.tableView setContentOffset:appDelegate.testCGPoint animated:YES];
}

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {

 if ([segue.identifier isEqualToString:@"ShowDetail"]) {

   appDelegate.testCGPoint = [self.tableView contentOffset];

 }
}

您應該將表視圖的內容偏移量保存為一個值。
float tableContentOffset;
然后,將偏移量保存到該浮點數中。 最后,當您需要設置表格視圖的內容偏移量時,
[self.tableView setContentOffset:CGPointMake(0,tableContentOffset)animation:YES];

因此,在您的代碼中,您已經創建了CGPoint。 但是,該創建存在於prepareForSegue方法中。 因此,您不能在方法外部訪問該點! 解決方案是在頭文件中創建CGPoint。
CGPoint tableContentOffest;
然后,在prepareForSegue方法中,只需設置表的偏移值即可。 不要創建新的CGPoint。
另外,在您的代碼中[vc.tableView setContentOffset:_tableContentOffset動畫:是]; 您可能要使用[vc.tableView setContentOffset:tableContentOffset animation:YES]進行設置; 而不是_tableContentOffset。 希望這對您有所幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM