2014-02-12 19 views
0

我有兩個UITableView的實例。當我將它們作爲UIViewController的根視圖添加到UINavigationController的根視圖中時,我得到其中一個自動添加了contentOffsety爲-64,因爲新屬性爲automaticallyAdjustsScrollViewInsets,但另一個爲0.只有第一個將被調整。將UITableView的實例添加到UIViewController的視圖中,只調整了其中的一個

我已經從蘋果的文檔和互聯網做了一些研究。仍然無法找到任何線索。

這是我添加表格視圖的代碼。

- (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。但即使我試圖設置contentOffsetsecondTableView手動,不知何故它是更改回0後,視圖控制器顯示,中斷點在viewDidAppear:,在屏幕上。

雜項: Xcode 5.0.2,iOS 7 SDK,ARC,既沒有Storyboard也沒有xibs。

如果有人能幫助我,我將不勝感激。

回答

0

如果您使用故事板,這個問題將更容易解決。這聽起來像自動佈局會自動爲您調整contentOffset,儘管從未明確要求。 See this answer對於與一個UITableView看起來與另一個相同的UITableView不同的(或完全相同的?)問題。 Xcode可能會假設你的一個實例化的UITableView對象是最頂層的UIView。

+0

這個問題和我的很相似。但'contentOffset'填充是由'AdjustsScrollViewInsets'屬性設置的,而不是自動佈局。所以Xcode只會照顧第一個類似UIScrollView的實例嗎? – vc7

相關問題