【问题标题】:view controller status bar not appearing视图控制器状态栏未出现
【发布时间】:2014-03-24 23:23:21
【问题描述】:

当我设置并运行我的应用程序时,状态栏不会出现。我有一个名为:“MOVViewController”的视图控制器,带有 .xib 文件。在 AppDelegate.h 我有这个:

@property (nonatomic, retain) IBOutlet MOVViewController *viewController_;

在 .m 中,我有这个:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];
    CGRect rcScreen = [[UIScreen mainScreen] applicationFrame];
    _window = [[UIWindow alloc] initWithFrame:rcScreen];
    viewController_ = [[MOVViewController alloc] init];
    [_window addSubview:viewController_.view];
    [self.window makeKeyAndVisible];
    return YES;
}

当我运行它时,会出现视图控制器,但没有状态栏。为什么? 提前致谢

【问题讨论】:

    标签: ios objective-c statusbar uiwindow


    【解决方案1】:

    尝试在 didFinishLaunchingWithOptions 方法中添加它

    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent
                                                animated:NO];
    

    您可以随意更改 StatusBarStyle

    编辑:实际上,显示/隐藏状态栏的方法是

    [[UIApplication sharedApplication] setStatusBarHidden:NO];
    

    【讨论】:

    • 我在didFinishLaunchingWithOptions方法中添加了这个,但是状态栏应该在的地方还是有黑条
    • 所以之前,您没有看到任何状态栏。现在,它是黑色的,没有文字?
    • 我在那里找不到任何有用的东西
    【解决方案2】:

    除非您设置应用程序的statusBarHidden 属性,否则设置状态栏样式将无济于事,如下所示:

    [[UIApplication sharedApplication] setStatusBarHidden:NO];
    

    还将Info.plist 文件中的UIStatusBarHidden 键设置为NO。

    【讨论】:

    • 我想我找到了:您应该将您的视图控制器实例 viewController_ 设置为您的 _window 的 rootViewController。您可以使用 [_window setRootViewController:viewController_] 来执行此操作。
    猜你喜欢
    • 2014-08-03
    • 1970-01-01
    • 2013-10-20
    • 2013-06-13
    • 1970-01-01
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多