Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 必须为“切换视图”;[[UINavigationBar外观]SetPartInColor:[UIColor darkGrayColor]]&引用;工作_Ios_Uiappearance_Bartintcolor - Fatal编程技术网

Ios 必须为“切换视图”;[[UINavigationBar外观]SetPartInColor:[UIColor darkGrayColor]]&引用;工作

Ios 必须为“切换视图”;[[UINavigationBar外观]SetPartInColor:[UIColor darkGrayColor]]&引用;工作,ios,uiappearance,bartintcolor,Ios,Uiappearance,Bartintcolor,我将在单击按钮时将条着色颜色设置为不同的颜色,但您必须切换视图才能使以下方法生效。我不知道为什么不是 [[UINavigationBar appearance] setBarTintColor:[UIColor darkGrayColor]]; 谢谢:D UINavigationBar *navBar=self.navigationController.navigationBar; [navBar setBarTintColor:[UIColor darkGrayColor]]; 试试这个

我将在单击按钮时将条着色颜色设置为不同的颜色,但您必须切换视图才能使以下方法生效。我不知道为什么不是

[[UINavigationBar appearance] setBarTintColor:[UIColor darkGrayColor]];
谢谢:D

UINavigationBar *navBar=self.navigationController.navigationBar;
[navBar setBarTintColor:[UIColor darkGrayColor]];
试试这个

这就是我测试它的方式

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UINavigationBar *navBar=self.navigationController.navigationBar;
    [navBar setBarTintColor:[UIColor darkGrayColor]];
}
因为我在屏幕上没有任何按钮,所以我只更改了一个表委托函数

错误原因:

[[UINavigationBar外观]SetPartIntColor:[UIColor]
随机颜色]]不工作,因为UIViewController已被禁用
初始化

解决方案:

(1) 用于在AppDelegate didFinishLaunch函数中设置全局效果的用户

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    // Override point for customization after application launch.

    [[UINavigationBar appearance] setBarTintColor: [UIColor redColor]];
    return YES;
}
(2) 关于初始化的UIViewController,您应该使用用户self.navigationController.navigationBar来设置颜色也会对应用程序的生命周期产生影响

[self.navigationController.navigationBar setBarTintColor:[UIColor randomColor]];

我在我的AppDelegate中调用它,这样就不起作用了。不幸的是:/我只是在我的一个项目上测试了这两行,它工作得非常好。如果你愿意,我可以发布屏幕截图。虽然我使用这些命令在本地行而不是委派。只是一个有两行的函数。让我知道,嗯,如果你这样称呼他们,你到底是怎么称呼他们的?你是如何把它放在应用程序代理中的?不要把它放在点击按钮的应用程序代理放在viewcontroller中,也不要放在连接到执行操作的按钮的函数中