簡體   English   中英

UITableView第一行被切斷

[英]UITableView first row is cut off

什么會導致導航控制器中表的第一行被定位,因此它的一部分位於導航控制器下?

我似乎無法讓它從上到下顯示整行; 它可能看起來很小,但顯然不正確,我發現它沒有吸引力。

TableViewController完全在代碼中添加到導航控制器:

     SettingsRootController*settings=[[SettingsRootController alloc] initWithStyle:UITableViewStylePlain];
    self.settingsView=[[[UINavigationController alloc] initWithRootViewController:settings]autorelease];
    [settings release];

SettingsRootController是UITableViewController的子類。

什么會導致導航控制器中表的第一行被定位,因此它的一部分位於導航控制器下?

似乎這是以編程方式添加的UINavigationController的常見問題 - 請參閱添加UINavigationController作為UIView的子視圖

基本上,您應該做的是在將UINavigationController作為子視圖添加到任何地方之前設置它的frame屬性。 在上述問題的接受答案中,還有一個建議是將UINavigationController的框架改為:

nav.view.frame = CGRectMake(nav.view.frame.origin.x, nav.view.frame.origin.y - 20,
                      nav.view.frame.size.width, nav.view.frame.size.height);

唯一可行的方法是手動將導航控制器內的桌面視圖向下移動10個像素,但只能在iPhone上,而不是在iPad上,因為iPad上沒有對齊問題,在iPad上移動10個像素會產生差距。 這顯然是某種導航控制器錯誤,因為其他線程中還有其他奇怪的問題。

 CGPoint tableorigin=CGPointMake(0,ISIPAD?0:10);

暫無
暫無

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

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