我正在使用以下方法更改标签栏图标颜色
[tabBarController.tabBar setSelectedImageTintColor:[UIColor redColor]];
但在使用之前我读了一些关于苹果应用程序拒绝的帖子,因为这个问题。我假设现在必须接受ios5方法。这是真的吗?感谢。
答案 0 :(得分:9)
它不会被拒绝,但您必须将部署目标设置为iOS 5,并且运行iOS 4的用户将无法下载和安装您的应用。
要仅在iOS 5上使用此方法,并且仍允许该应用在iOS 4上工作(使用蓝色标签),请执行以下操作:
if ([UITabBar instancesRespondToSelector:@selector(setSelectedImageTintColor:)])
{
[tabBarController.tabBar setSelectedImageTintColor:[UIColor redColor]];
}
此代码可以安全地在iOS4上运行。
或者,请参阅我对此问题的回答,该问题解释了如何以适用于任何iOS版本的方式完全自定义选项卡图标颜色:tabbar item image and selectedImage
答案 1 :(得分:0)
我自己没有尝试,但我看了UITabBar Class Reference。属性selectedImageTintColor已记录在案。所以这意味着,您可以使用它。通常,Apple仅拒绝使用未记录(非公共)API的应用程序。所以你可以安全地使用它。
您也可以在iOS 5及更高版本中看到该属性。
答案 2 :(得分:0)
您可以查看this post有关如何确定当前iOS版本的信息,并为运行iOS 5或更低版本的用户执行相应的标签栏项目颜色设置。希望这会有所帮助。