2015-04-22 60 views
0

当iOS应用程序启动时,所有标签栏图标都具有默认色调(浅蓝色)。我在viewDidLoad中设置了自己的自定义色调颜色。但它适用于延迟,我看到默认色调颜色和我自定义的色调颜色之间的过渡。如何在界面出现之前将自定义色调颜色应用于标签栏并消除颜色闪烁?初始应用程序加载标签栏色调闪烁

+0

试试这个viewWillAppear。 –

回答

0
override func viewWillAppear(animated: Bool) { 
    super.viewWillAppear(animated) 

    // Set the tint here after the view has been loaded completely 
    } 
+0

具有相同的眨眼效果。我看到默认色调,然后它变成我的颜色。 – ilyabreev

0

所以这是因为当应用程序完成启动时设置了默认值,然后在视图控制器初始化时更改。为此,您需要全局更改标签栏色调。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法的AppDelegate.m文件中执行此操作。

使用[[UITabBar appearance] setBarTintColor:(UIColor *)];可以在整个应用程序中设置标签栏的色调,其中(UIColor *)当然会被您想要的颜色取代。

希望这会有所帮助。

+0

尝试没有成功。当然可以用'UITabBar.appearance()。barTintColor = ...'来快速翻译。它具有与问题中所述相同的效果。首先,我看到默认的蓝色色调,但随后(在1秒内)它变成我的自定义颜色。 – ilyabreev