Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone Cocoa Touch:UITableView未调整大小_Iphone_Objective C_Cocoa Touch - Fatal编程技术网

Iphone Cocoa Touch:UITableView未调整大小

Iphone Cocoa Touch:UITableView未调整大小,iphone,objective-c,cocoa-touch,Iphone,Objective C,Cocoa Touch,我有一个应用程序,它有一个顶部导航栏和一个底部选项卡栏 其中一个选项卡显示带有我的自定义控制器的表的XIB文件。 此UITableView由MyTableViewController类创建 我对桌子的大小有意见。该表的框架大小不好(它是全屏iphone大小,没有考虑状态/选项卡/导航栏的大小),但是它的位置很好(它从导航栏下开始) 在表格的XIB(这是一个单独的XIB文件,仅保存表格)中,我尝试设置和删除顶部/底部(导航/选项卡)栏来更改表格大小。 这没用 然后我尝试从控制器自定义它: - (v

我有一个应用程序,它有一个顶部导航栏和一个底部选项卡栏

其中一个选项卡显示带有我的自定义控制器的表的XIB文件。
此UITableView由MyTableViewController类创建

我对桌子的大小有意见。该表的框架大小不好(它是全屏iphone大小,没有考虑状态/选项卡/导航栏的大小),但是它的位置很好(它从导航栏下开始)

在表格的XIB(这是一个单独的XIB文件,仅保存表格)中,我尝试设置和删除顶部/底部(导航/选项卡)栏来更改表格大小。
这没用

然后我尝试从控制器自定义它:

- (void)viewDidLoad {
    self.view.frame = CGRectMake(0, 20, 320, 270); // a lot shorter than I need it, but just to prove the point
    [super viewDidLoad];
}
我在那里设置了一个断点,实际上调用了viewDidLoad,但表的大小相同


我做错了什么?

确保在Interface Builder中设置了“Springs&Struts”(工具菜单>尺寸检查器),以便它是一个正确的展开/收缩视图。最有可能的情况是,框外有4条红色实线,框内有两条红色实线(不可见虚线)。

请确保在Interface Builder中设置了“弹簧和支柱”(工具菜单>尺寸检查器),以便它是一个适当的展开/收缩视图。最有可能的情况是,框外有4条红色实线,框内有两条红色实线(没有可见的虚线)。

如果在设置框架之前先调用[super viewDidLoad]会怎么样。 由于您正在从XIB加载视图,[super viewDidLoad]可能会覆盖您的self.view.frame=

- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.frame = CGRectMake(0, 20, 320, 270); // a lot shorter than I need it, but just to prove the point
}

如果在设置帧之前先调用[super viewDidLoad],会怎么样。 由于您正在从XIB加载视图,[super viewDidLoad]可能会覆盖您的self.view.frame=

- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.frame = CGRectMake(0, 20, 320, 270); // a lot shorter than I need it, but just to prove the point
}

我可以设置支柱,但不能设置弹簧(单击时不会发生任何事情)。有趣的是,尺寸检查器在“尺寸和位置”部分下显示了我希望得到的尺寸(320x367)。但是当我运行这个应用程序时,这个表就乱七八糟了。我可以设置支柱,但不能设置弹簧(当我点击它们时,什么都不会发生)。有趣的是,尺寸检查器在“尺寸和位置”部分下显示了我希望得到的尺寸(320x367)。但是当我运行这个应用程序时,这个表就乱七八糟了。这行得通,谢谢:)我在一个后来的事件上预先设置了框架,这也行得通,谢谢:)我在一个后来的事件上预先设置了框架,这也行得通