我想通过在右侧添加自定义背景颜色,背面图标和按钮来自定义我的UINavigationBar视图。我已经看到了各种解决方案,我希望能够支持iOS7和iOS8 +。在哪里做标准的地方:
感谢阅读!
答案 0 :(得分:1)
有几种方法可以做到这一点,虽然我可以提供的唯一方法就是选择一个而不是另一个是Apple给出的例子。
导航控制器及其UI栏非常可定制,几乎没有任何东西无法更改(从UI角度来看)。
有几个例子只是说在AppDelegate中转储代码。我自己这样做了。虽然我不能说我遇到了问题,但看起来确实有点奇怪/混乱。
所以在这种情况下,我会按照Apple shows us all how to do it的方式进行操作,并将自定义项添加到要查看自定义项的VC的.m文件中(您应该下载示例项目并使用它进行播放) )。
这样做似乎有点干净,您可以指定哪个VC获取哪个外观(而不是让所有VC具有相同的导航栏)。
提供一些代码,说明如何进行所请求的自定义:
自定义背景颜色
[[UINavigationBar appearance] setBarTintColor:[UIColor blueColor]];
自定义后退图标:
[[UINavigationBar appearance] setBackIndicatorImage:[UIImage imageNamed:@"some_btn_image.png"]];
[[UINavigationBar appearance] setBackIndicatorTransitionMaskImage:[UIImage imageNamed:@"some_btn_image.png"]];
右侧按钮:
UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"Email"]
style:UIBarButtonItemStyleBordered target:self action:@selector(action:)];
self.navigationItem.rightBarButtonItem = addButton;
我尽我所能用我的数据回答了这个问题。我认为一个普遍得体的答案总比没有答案好(我看到你有点不耐烦了。)