2011-04-29 31 views
0

我的XIB有3個UITable和3個導航條。UITables是動態的尺度,我使用導航條來分離UITable並顯示UITable名稱的標題。如何設置3 UITable和2導航欄的位置?

我想設置第一個表下的第一個導航欄和第二個表下的第二個導航欄。

我試圖找到第一個表格的框架來獲取表格的位置x,y和高度,但它不起作用。

- (void)viewDidLoad 
{ 
    blah blah... 
    CGRect table1frame = table1.frame; //But it don't work 
} 

我不知道從哪裏得到每個表格框架。 請幫助我或引導我。非常感謝

+0

請打印NSLog(@「Table 1:%@」,table1);在上面的方法中,如果這個打印UITableView對象在屏幕上詳細說明,那麼我們確實有問題,但是它打印出null,那麼請確保你已經連接了table1和outlet。 – Ravin 2011-04-29 04:04:12

回答

1

我不知道我明白你想要做什麼,但請記住,視圖控制器的視圖(其邊界)的幾何還不是當調用viewDidLoad時設置。任何子視圖的界限(和框架)都沒有設置。這意味着在這一點上所有的幀幾乎都設置爲零。而且,如果您試圖訪問視圖的框架或其任何子視圖的框架,您可能會注意到這一點。因此,如果您需要根據視圖的幾何體(在其框架上或它的任何子視圖的框架),它通常在viewWillAppear中完成。

您的問題可能不是哪裏得到表視圖的框架,但得到它。你正在尋找它在正確的地方(表格視圖的框架屬性),但你太早。我希望這是有幫助的。

+0

首先,我很抱歉我錯誤的語法;(第二個是,我在看我什麼時候能看到桌子的視圖框架,非常感謝。我會盡快嘗試 – crazyoxygen 2011-04-29 04:38:48

+0

嗯,我嘗試 - (void)viewWillAppear :(BOOL)animated {} {CGRect table1frame = table1.frame; NSLog(@「Test position%@」,NSStringFromCGRect(table1frame)); }但是這是我通過在單元格中放置文本來更改單元格大小之前的第一個大小 – crazyoxygen 2011-04-29 07:27:03

+0

@crazyoxygen:如果稍後改變了單元格的大小,表格視圖框架不應該改變,表格視圖中的單元格會減少。這是你關心的嗎?我理解正確嗎? – 2011-04-29 07:58:13