我需要ios7/6
的tableview设计 - 在ios6
我需要实现一个tableview分组样式,在ios7
我需要一个简单的样式。所以在故事板中我将样式更改为plain并在UITableViewController
的子类的viewDidLoad中我有这样的内容:
if (!IS_OS_7_OR_LATER) {
self = [[UITableViewController alloc] initWithStyle:UITableViewStyleGrouped];
}
但它不起作用。我尝试使用initWithCoder
方法,但无法获得良好的结果。有什么帮助吗?
答案 0 :(得分:1)
- (id)initWithFrame:(CGRect)frame style:(UITableViewStyle)
{
bool isLowerOrEqualToSix = (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1);
if (isLowerOrEqualToSix) { // iOS 6 or lower
[super initWithFrame:frame style:UITableViewStyleGrouped];
} else { // iOS 7 or higher
[super initWithFrame:frame style:UITableViewStylePlain];
}
}
这就是你需要的。
答案 1 :(得分:0)
如tableview类引用中所述,必须在初始化时设置style属性。此后无法更改。在代码中,您可以使用if语句检查ios版本并使用适当的样式进行初始化。使用故事板,请点击此链接How to switch to different Storyboard for iPhone 5?