Rya*_*yan 5 iphone xcode objective-c three20 ios
我正在添加一个TTTableViewController现有的UIViewController,我发现的一个奇怪的事情是frame初始化的TTTableViewController 的属性是有线的,例如在iOS布局中.
我有:
UIStatusBarUINavigationControllerUIViewController UITabBar为了设置TTTableViewController所有剩余空间的填充,我需要将高度设置为460而不是367.(367 = 480-20-44-49)
例如
self.tableViewController.view.frame = CGRectMake(0, 0, 320, 460.0f);
Run Code Online (Sandbox Code Playgroud)
代替
self.tableViewController.view.frame = CGRectMake(0, 0, 320, 367.0f);
Run Code Online (Sandbox Code Playgroud)
*编辑澄清:我的意思是TTViewController顶部的TTTableViewController(使用[self.view addSubview:self.tableViewController.view];),我需要设置self.tableViewController.view.frame = CGRectMake(0,0, 320,460.0f); 而不是367
我认为这取决于你何时设置框架。例如,我非常确定当您在 viewDidLoad 中设置框架时,您将在考虑状态栏和其他事项之前设置它。可能还有其他类似的情况。如果您将其设置为 320:460,它将调整大小以考虑状态栏和其他内容,使其填充屏幕的其余部分。如果你将其设置为 320:367,因为你已经考虑到了这些内容,它会再次调整大小并压缩(基本上缩小两次),使其仅填充屏幕的一部分。如果您正在使用 viewDidLoad,您可以尝试将其固定在其他方法中(也许是 viewWillAppear?),或者继续使用 320:460。
很高兴知道您何时准确设置框架。还要记住,我可能会走得很远。我现在感觉脑子有点模糊。