我的应用程序中有一个在 NIB 中构建的表格 View ,我通过尺寸检查器将高度设置为 68。
我还在我的代码中执行以下操作。
- (void) viewDidAppear:(BOOL)animated
{
self.tableView.frame = CGRectMake(0,0,320,68);
self.tableView.scrollEnabled = NO;
}
- (void)viewDidUnload
{
[super viewDidUnload];
}
- (void)awakeFromNib
{
[self.tableView setBackgroundColor:[UIColor clearColor]];
self.tableView.rowHeight = 68;
}
当我在模拟器或 iPhone 中运行该应用程序时,它看起来很好,因为 table 只有 68 像素高。如果我关闭应用程序(转到主屏幕)并重新打开它,表格将不再只有 68 像素高,而是占据整个屏幕。
我似乎无法让它始终保持 68px?
除了我上面的问题之外,还有一个方法(awakeFromNib、ViewDidAppear 等...),您应该始终且仅设置对象的大小或位置?
最佳答案
使用该方法设置高度,
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return 68;
}
关于ios - 在哪里设置 UITableView 的高度或框架?从 Nib 醒来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9372331/