簡體   English   中英

UITableView不記得其滾動位置

[英]UITableView doesn't remember its scroll position

盡管我不確定從哪里開始,但是我可以發布代碼。 我在三級UINavigationView方案的中間層中有一個帶有自定義單元格的UITableView。 當我向下瀏覽至最底層並查看有關數據的詳細信息,然后使用左上角的后退按鈕時,我的表格視圖將一直返回到頂部,而不是向下滾動到我上次看到的位置。 我應該在哪里看呢?

編輯:

這是EventsTableViewController中的代碼,用於加載EventsDetailViewController的實例並將其推送到導航控制器上:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

    NSMutableArray *events = [DataManager sharedDataManager].eventList;

    Event *selectedEvent = [events objectAtIndex:[indexPath row]];
    EventsDetailViewController *detailController = [[EventsDetailViewController alloc] initWithNibName:@"EventsDetailView" bundle:nil];
    [detailController loadEvent:selectedEvent];

    MyAppDelegate *del = (MyAppDelegate *)[UIApplication sharedApplication].delegate;
    [del.navigationController pushViewController:detailController animated:YES];
    [detailController release];

}

據我所知,我的EventsTableViewController中沒有關於重新加載表的任何內容-我尚未實現viewWillAppear或viewDidLoad或任何一種。

您是否有機會重新加載不該使用的表? 以ViewWillAppear方法為例嗎?

每當我到達此級別的導航時,我不小心實例化了表格視圖的新副本。 現在已全部解決,這不再是問題。

我有一個非常類似的問題。 當我轉到chatView時,它是屬於navigationController的UIViewController,並且具有tableView作為子視圖,然后滾動到某個點,然后返回,然后再返回到chatView,它開始於再頂。 我在chatView的loadView中分配tableView,因此每次我回來時都會重新分配tableView。 但是,這不是標准嗎? 如何始終像iPhone Messages應用程序一樣始終滾動到底部,並在底部顯示滾動條幾秒鍾?

這是代碼:

http://github.com/acani/acani-chat/blob/master/Lovers2/Classes/ChatViewController.m#L184

謝謝!

馬特

你在做什么:

[self presentViewController:navController animated:YES completion:nil];

tableviewcontroller在哪里? 試試看:

[self.navigationController presentViewController:navController animated:YES completion:nil];

暫無
暫無

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

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