在iphone sdk中更改方向时加载表的问题?

时间:2011-07-26 11:18:57

标签: objective-c ios4

我在表视图中有一个客户列表,我的应用程序支持方向,我正在根据方向更改按钮的框架,我将其添加到表格单元格中。但是这些更改没有正确发生,当我导航到另一个视图并返回时,会看到更改。但不是立刻。

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

if (UIInterfaceOrientationIsLandscape(interfaceOrientation)) { 

    isLandscape = YES;
    myTableView.frame =  CGRectMake(0, 0, 1024, 768);
    labelTitle.frame = CGRectMake(500, 120, 300, 30);
    accessoryBtnImageView.frame = CGRectMake(870, 46, 58, 58);
}

else
{
    isLandscape = NO;
    myTableView.frame =  CGRectMake(0, 0,  768,1024);

    labelTitle.frame = CGRectMake(350, 120, 300, 30);
    accessoryBtnImageView.frame = CGRectMake(600, 66, 58, 58);
 }

return YES;     
}

我在viewWillAppear(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath中使用过此编码 {{1}}方法,但我仍然遇到问题,我想我做错了。请任何人帮助我。 谢谢 Praveena

1 个答案:

答案 0 :(得分:0)

您应该在视图上使用autoresizingMask属性,而不是手动调整大小。

根据您设置调整大小蒙版的方式,您可以将视图固定在一侧,在设备旋转时使用超级视图展开等等。

documentation详细介绍了如何执行此操作。