1

我有一个iOS7 应用程序,并将状态栏文本设置为白色,didFinishLaunchingWithOptions如下所示:

 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

我有一个带有调用本机的 javascript 的 webview Image Picker。在 中Image Picker,当我从图库中选择一张照片时,状态栏文本将重置为黑色。

Image Picker纠正此问题的一种方法是在关闭时再次应用上述代码。但是,我无法检测到此事件,因为它在 webview 上。

知道如何解决这个问题吗?

4

4 回答 4

3

在 ViewController 中尝试此代码,它对我有用

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
  {
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
  }
于 2014-02-14T07:01:46.757 回答
1

我通过实现这个解决了它:

-(void) viewDidAppear:(BOOL)animated
{

    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

    [super viewDidAppear:animated];

}

只要照片库关闭,就会调用此代码。

于 2014-02-17T05:37:39.477 回答
0

尝试以下步骤。

-> Set the "View controller-based status bar appearance" to "NO" in the plist

然后使用

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

        [UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

}
于 2014-02-14T06:48:17.060 回答
0

没有改变状态栏文本颜色的实例方法。所以你必须自定义状态栏。您可以检查一次此链接.. http://www.appcoda.com/customize-navigation-status-bar-ios-7/

于 2014-02-14T07:06:12.040 回答