[英]restore scroll position uitableview
我有一個表視圖,可通向詳細信息視圖。 當我從表視圖中單擊返回時,我將返回到表的頂部。 我希望它返回到所選行的位置。 我知道我可以使用滾動定位,但它需要一個索引路徑。 我認為我需要創建一個索引路徑屬性並在方法調用中使用它是否正確。 如果是這樣,我在哪里填充它 - 在 did select row/cell 方法中? 我的表中有部分,所以它是索引路徑部分,索引路徑行嗎? 最后它被稱為視圖確實出現了?
也許你正在尋找這個:
tableView.contentOffset.y;
如果你的意思是 - 你從細節控制器回到你的主控制器,你可以滾動到 viewWillAppear 方法中的位置(在 viewWillDissapear 中保存 tableView.contentOffset.y)。 但是我創建了新項目並且不需要這樣做,它會在從細節返回時自動打開帶有保存位置的主控制器
它應該使用- (void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath atScrollPosition:(UITableViewScrollPosition)scrollPosition animated:(BOOL)animated
以這種方式工作:
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:selectedRow inSection:yourSection];
[yourTableView scrollToRowAtIndexPath:indexPath
atScrollPosition:UITableViewScrollPositionTop
animated:YES];
atScrollPosition
可以采用以下任何值:
typedef enum {
UITableViewScrollPositionNone,
UITableViewScrollPositionTop,
UITableViewScrollPositionMiddle,
UITableViewScrollPositionBottom
} UITableViewScrollPosition;
我希望這可以幫助你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.