2011-08-14 76 views
0

我似乎无法改变导航栏按钮stye的样式。这是我得到的。设置iOS中“More”选项卡的导航栏按钮样式

enter image description here

我子类的UINavigationController和做了以下:

- (id)initWithRootViewController:(UIViewController *)rootViewController 
{ 
    self = [super initWithRootViewController:rootViewController]; 

    if (self) 
    { 
     UINavigationBar *navBar = [self navigationBar]; 
     [navBar setBarStyle:UIBarStyleBlack]; 
     [navBar setTintColor:[UIColor blackColor]]; 
    } 

    return self; 
} 

我正在运行的iOS 4.3和按钮由OS时,有存在于的UITabBarController多于4个标签自动添加。

关于我可能做错什么的建议?

+0

我想你必须解释你的目标是什么也是对的? :)如果你不告诉他们你想完成什么,人们不能告诉你它是怎么做的...... –

+0

您使用的是哪个版本的SDK? – joerick

+0

你试图用不同的风格展示什么?我假定“编辑”按钮,但该按钮的代码未显示。您是以编程方式或通过Interface Builder添加此按钮吗? – superjessi

回答

1

由于操作系统处理的导航控制器越多,这就是你必须要做的。

[self.tabBarController.moreNavigationController.navigationBar setTintColor:[UIColor blackColor]]; 
+0

大卫在这里是正确的。虽然我应该指出,除了设置tintColor之外,你可能还想对你的酒吧做点别的事情。 通过tabBarController.moreNavigationController.navigationBar访问它。我建议调整图层属性以获得更多的自定义实现。 – 2012-09-28 23:00:18

0

如果它自己添加,我认为你需要改变self.navigationItem或self.navigationController到你想要的,而不仅仅是你自定义的?

+0

我想如何控制“More”导航项目的样式?它是“More”选项卡的一部分,它是自动创建的。 – David

+0

这就是我所说的,设置'self.whatever'的样式,它会改变More按钮的样式。它所添加的按钮正在订阅'self'的属性,所以你必须改变那里的样式。你知道我想说什么吗? –

+0

例如,'self.navigationItem.RightBarButtonItem'。 –