[英]Adding UITableView's instances to the view of UIViewController, only one of them was adjusted
我有兩個UITableView
的實例。 當我將它們作為子視圖添加到UIViewController
的根視圖(位於UINavigationController
,我發現其中之一是自動添加的contentOffset
的y
為-64,這是由於新屬性automaticallyAdjustsScrollViewInsets
,而另一個是0。只有第一個將被調整。
我從Apple的Documents和Internet進行了一些研究。 仍然找不到任何線索。
這是我添加表格視圖的代碼。
- (void)viewDidLoad
{
[super viewDidLoad];
// the table views are init in their getter methods
// both frames are equal to root view of this view controller
[self.view addSubview:self.firstTableView];
[self.view addSubview:self.secondTableView]; // this one will not have contentOffset
}
在addSubview
,因為我希望它們兩個都具有contentOffset
。 但是,即使我嘗試手動將contentOffset
設置為secondTableView
,以某種方式在顯示視圖控制器后又將其更改回0 ,轉折點位於屏幕上的viewDidAppear:
。
雜項: Xcode 5.0.2,iOS 7 SDK,ARC,情節提要和Xibs均不。
如果有人可以幫助我,我將不勝感激。
如果使用情節提要板,此問題將更容易解決。 聽起來好像autolayout會自動為您進行contentOffset調整,盡管從未明確要求這樣做。 對於一個非常相似(或完全相同?)的問題, 請參見此答案 ,其中一個UITableView似乎與另一個相同的UITableView不同。 Xcode可能假設您實例化的UITableView對象之一是最頂層的UIView。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.