UICollectionViewController
TabBarViewController
iOS 6.0
适用于ViewController
及更高版本的ios版本。我想知道如果设备的长度大于iOS 6.0
,是否有任何方法可以使用不同的UITableView
。例如,对于使用iOS 6.0
和UICollection
的设备,对于使用iOS 6.0
和后续版本的设备,我可以使用PSTCollectionView
吗?
我也试过{{1}},但它有一些问题。
我添加了一张显示故事板的图片。我的集合在TabBarController中,如果设备在iOS 6.0之前使用,我想更改为TableView。
答案 0 :(得分:4)
有一个非常简单的解决方案
例如在tabBarControllers中,索引2用于CollectionView,而3用于TableViewController
在故事板中简单地完成所有必需的设置图标名称等
现在在您的ApplicationDidFinishLaunchingWith Options中执行此操作
我假设您的tabbarController是rootViewContrller,请执行此操作
UITabbarController *tabbarController = (UITabBarController *)self.window.rootViewController;
NSMutableArray *arrayControllers = [NSMutableArray arrayWithArray:tabbarController.viewControllers];
if (OlderVersion) {//Check
[arrayControllers removeObjectAtIndex:2];
}else{
[arrayControllers removeObjectAtIndex:3];
}
[tabbarController setViewControllers:arrayControllers];
答案 1 :(得分:0)
是的,你可以这样做。
只需获取手机版本:
[[UIDevice currentDevice] systemVersion]
然后,根据值加载右视图控制器。
答案 2 :(得分:0)
您需要向视图控制器添加标识符
UIStoryboard *sb = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
if(versionValue>=7)
{
UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"viewControllerIOS7"];
}
else
{
UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"viewControllerIOS6"];
}
希望得到这个帮助。
答案 3 :(得分:-1)
是的,您可以检查您的版本的以下条件。
NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
float versionValue=[currSysVer floatvalue];
if(versionValue>=6)
{
// do some stuff you want to do here
}
希望对你有所帮助。