2013-01-25 51 views
1

我在xcode 4.5中使用了storyboard。以编程方式调整tableview高度

在我的应用程序中有2个视图,view1和view2。

每个视图都有一个tableview。

导航控制器连接到视图。

我想改变桌面的高度取决于Iphone显示器的大小。

我使用下面的代码:

- (void)viewDidAppear:(BOOL)animated { 

[super viewDidAppear:animated];  

// Verify if the screen is iphone 5 

if ([[UIScreen mainScreen] bounds].size.height == 568){ 

    // Resize table hight 

    CGRect tvframe = [_myTableView frame]; 
    [_myTableView setFrame:CGRectMake(tvframe.origin.x, 
             tvframe.origin.y, 
             tvframe.size.width, 
             tvframe.size.height + 64)]; 
} 

的问题是,该代码没有任何影响应用程序启动并出现厂景时。

但是,当我移动到view2,然后回到view1调整大小生效。

我不明白为什么应用程序启动时reszing不起作用。

回答

0

您是否尝试将代码移到ViewWillAppear?这应该解决问题。

+0

将代码移到ViewWillAppear不起作用。 我通过创建单独的视图解决了这个问题,这些视图用于Iphone 3/4和Iphone 5。 – Oualid

相关问题