iOS更改tabbar项目的颜色是安全的吗?

我正在使用下面的方法来改变tabbar图标的颜色,

[tabBarController.tabBar setSelectedImageTintColor:[UIColor redColor]]; 

但在使用之前,我读了一些关于苹果应用程序拒绝的post。 我假设如果是一个ios5方法现在必须被接受。 这是真的吗? 谢谢。

它不会被拒绝,但是您必须将您的部署目标设置为iOS 5,并且运行iOS 4的用户将无法下载和安装您的应用程序。

要仅在iOS 5上使用此方法,并且仍然允许应用程序在iOS 4(使用蓝色选项卡)上工作,请执行以下操作:

 if ([UITabBar instancesRespondToSelector:@selector(setSelectedImageTintColor:)]) { [tabBarController.tabBar setSelectedImageTintColor:[UIColor redColor]]; } 

这个代码是安全的在iOS4上运行。

或者,请参阅我对此问题的回答,以解释如何以适用于任何iOS版本的方式完全自定义选项卡图标颜色:选项卡项目图像和selectedImage

我没有自己尝试,但我看了一下UITabBar类参考 。 logging属性selectedImageTintColor 。 所以这意味着,你可以使用它。 通常情况下,苹果只拒绝使用无证(不公开)API的应用程序。 所以你可以安全地使用它。

您也可以在那里看到该属性在iOS 5及更高版本中可用。

您可以查看这篇文章 ,了解如何确定当前的iOS版本,并为运行iOS 5或更低版本的用户执行相应的标签栏项目颜色设置。 希望这可以帮助。