目前我正在继承UITableViewController
。我通过实现两种方法使 UITableviewController
中的每个单元格都变大了。
代码:
(CGFloat) tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath {
CGFloat screenHeight = [[UIScreen mainScreen] bounds].size.height;
return screenHeight * 1/2;
}
(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
CGFloat screenHeight = [[UIScreen mainScreen] bounds].size.height;
return screenHeight * 1/2;
}
我有两个问题/问题
我的 table 似乎被轻微地推到了右边,我该如何解决这个问题?
这是使 UITableViewControllers Cell 变大的正确方法吗? 另外:如果我制作一个自定义单元格,我不能只是将自定义单元格放在一个完整的单元格的位置,那么单元格的高度是多少并不重要?因为,它被自定义单元格取代了吗?
任何建议都会有所帮助。谢谢。
最佳答案
如果您希望每一行的高度都相同,则不要实现您拥有的两种方法。相反,只需在 viewWillAppear:
中添加以下行:
self.tableView.rowHeight = self.tableView.bounds.size.height / 2.0;
另请注意,高度基于表格 View 的高度,而不是屏幕高度。这可确保两个单元格适合表格 View 的可见部分。
仅在存在具有不同高度的行时才实现 heightForRowAtIndexPath:
。
仅供引用 - 您发布的代码都不会对似乎被推到右边的表格产生任何影响。那一定是其他原因造成的。
另一个注意事项 - 请记住,如果设备处于横向方向,[UIScreen mainScreen].bounds
将在 iOS 7 或更早版本下给您错误的结果。
关于ios - 如何在 iOS 中让 UITableView 变大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26744427/