Ios8 如何更改iOS 8中displayModeButtonItem返回的按钮的文本颜色?

Ios8 如何更改iOS 8中displayModeButtonItem返回的按钮的文本颜色?,ios8,uisplitviewcontroller,Ios8,Uisplitviewcontroller,在iOS8中,我使用splitViewController来显示数据。我有一个自定义颜色的导航栏浅蓝色,我设置的标题颜色为白色。我想将displayModeButtonItem中文本的颜色也更改为白色,但无论我做什么,它在iPhone上显示时都保持默认的蓝色。当显示在iPad上时,它是白色的 我试过了 self.navigationItem.leftBarButtonItem = [self.splitViewController displayModeButtonItem]; sel

在iOS8中,我使用splitViewController来显示数据。我有一个自定义颜色的导航栏浅蓝色,我设置的标题颜色为白色。我想将displayModeButtonItem中文本的颜色也更改为白色,但无论我做什么,它在iPhone上显示时都保持默认的蓝色。当显示在iPad上时,它是白色的

我试过了

    self.navigationItem.leftBarButtonItem = [self.splitViewController displayModeButtonItem];

self.navigationItem.leftBarButtonItem.tintColor = [UIColor whiteColor];

但那没用。看起来,由于这个按钮是由iOS自动处理的,所以我所做的任何事情都不能改变它。有什么地方可以让我截取这个按钮并设置它的颜色吗?

这很难找到。在Interface Builder中,您需要:

查找主视图控制器的导航控制器。 选择导航栏 换颜色
这很难找到。在Interface Builder中,您需要:

查找主视图控制器的导航控制器。 选择导航栏 换颜色
如果您不能使用接受的答案,因为您的主视图中没有我没有的导航控制器,您可以尝试以下操作:

[[UINavigationBar外观]setTintColor:[UIColor whiteColor]];
如果你把它放在应用程序委托中,它会使每个UIBarButtonItem(包括displayModeButtonItem)变为白色,但你可以将它更具体地定位到SplitViewController的displayModeButtonItem。

如果你不能使用接受的答案,因为你的主视图中没有我没有的导航控制器,您可以尝试以下操作:

[[UINavigationBar外观]setTintColor:[UIColor whiteColor]]; 如果您将其放入应用程序委托中,它将使每个UIBarButtonItem(包括displayModeButtonItem)变为白色,但您可以针对SplitViewController的displayModeButtonItem使其更具体。

目标c

在SceneDelegate.m

- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {


UISplitViewController *splitViewController = (UISplitViewController *)self.window.rootViewController;
splitViewController.view.tintColor = [UIColor blackColor];

}
目标c

在SceneDelegate.m

- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {


UISplitViewController *splitViewController = (UISplitViewController *)self.window.rootViewController;
splitViewController.view.tintColor = [UIColor blackColor];

}

成功了!如果您将其他视图控制器推到细节导航控制器上,您可能还需要设置其色调。这很有效!如果将其他视图控制器推到详图导航控制器上,则可能还需要设置其色调。