如何调整 UINavigationBar tintColor,以弥补在 iOS6 的新渐变效果
1个回答
2014-12-24
展开全部
你能否达到这个目的的一种方法是使用背景图像并将其使用的 iOS 5.0 中引入的外观代理设置。
如果您创建了一个薄的垂直切片的图像 (例如宽度 1px 的和高度 44px 和增加了一倍了视网膜图像) 并将其添加到您的捆绑,然后您可以在您的应用程序一次使用下面的方法设置导航栏背景图像的所有导航栏:
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navigationBarImage"] forBarMetrics:UIBarMetricsDefault];
如果您运行这行代码,您的应用程序启动后,如在以下方法中的你 appDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
然后在应用程序中的每个导航栏将会看起来是相同的。使用这样的映像的优点是不管是操作系统版本并可能会也可能不会在将来的任何更改,您的应用程序将总是一样的。
早就意识到外观代理 API 只添加在 iOS 5.0,所以它不会与旧版本的 iOS。对于外观代理真的很好地概述我建议看 WWDC 2011 视频会话 114。
如果您创建了一个薄的垂直切片的图像 (例如宽度 1px 的和高度 44px 和增加了一倍了视网膜图像) 并将其添加到您的捆绑,然后您可以在您的应用程序一次使用下面的方法设置导航栏背景图像的所有导航栏:
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navigationBarImage"] forBarMetrics:UIBarMetricsDefault];
如果您运行这行代码,您的应用程序启动后,如在以下方法中的你 appDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
然后在应用程序中的每个导航栏将会看起来是相同的。使用这样的映像的优点是不管是操作系统版本并可能会也可能不会在将来的任何更改,您的应用程序将总是一样的。
早就意识到外观代理 API 只添加在 iOS 5.0,所以它不会与旧版本的 iOS。对于外观代理真的很好地概述我建议看 WWDC 2011 视频会话 114。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询