簡體   English   中英

為什么我的UITableView無法滾動,除非我告訴它為滾動設置動畫?

[英]Why does my UITableView fail to scroll unless I tell it to animate the scroll?

我已經設置了一個表視圖,以便在視圖控制器加載時滾動到某一行。 我將此代碼放入viewDidLoad方法,它的工作方式與我的預期相符:

[thisTableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:16 inSection:0] atScrollPosition:UITableViewScrollPositionTop animated:YES];

但是,如果我將最后一位更改為animated:NO ,它根本不會滾動。 我很喜歡它的動畫,但我想知道:如果動畫設置為NO,為什么不滾動?

在viewDidLoad中,tableView為空,因此無法滾動到第16行。 由於不需要動畫,因此立即評估調用

當您使用動畫:是時,動畫會延遲,直到顯示視圖,然后您的表格將被填充。

當您的表已經填充了數據時,您可能希望在viewDidAppear(或viewWillAppear)中使用此類代碼。 這會在每次顯示視圖時調用它(除非你添加一些邏輯),不確定它是否符合你的要求......

暫無
暫無

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

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