当前位置: 首页 > 知识库问答 >
问题:

状态栏颜色与导航栏不匹配

章晗日
2023-03-14

我现在有一个视图控制器。我希望状态栏的颜色与导航栏的颜色匹配。

我已将UIViewControllerBasedStatusBarAppearance设置为“是”,因为我不希望在整个应用程序中进行此更改。

我在设定自我。导航控制器。导航栏。但这只是改变了导航栏的颜色。状态栏保持较浅的颜色。

我已经尝试过setNeedsStatusBarAppearanceUpdate和preferredStatusBarStyle的各种组合,但都没有效果。

视图控制器是这样启动的:

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:searchController];

navigationController.modalPresentationStyle = UIModalPresentationFormSheet;

[self presentViewController:navigationController animated:YES completion:nil];

共有1个答案

党宇定
2023-03-14

我的步骤如下,检查哪里出了问题:

  1. 创建2个视图控制器,如下所示,您可以将vc1嵌入导航控制器中:

代码如下:

- (IBAction)clickAction:(UIButton *)sender {

    UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
    ViewController2 *searchController = [sb instantiateViewControllerWithIdentifier:@"ViewController2"];

    UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:searchController];

    navigationController.modalPresentationStyle = UIModalPresentationFormSheet;

    [self presentViewController:navigationController animated:YES completion:nil];
}
 类似资料:
  • 但是像App Store里一样透明模糊但是有背景色,问题是导航控制器的背景色不像正常的那样在状态栏下。 我的代码: 编辑:我有一个自定义类和视图控制器嵌入在一个 Swift 3,Xcode 8.0 beta 5。

  • 我的应用程序中有一个视图控制器,它在情节提要中拖动了一个导航栏。它在iOS 6中运行良好,但在iOS 7中看起来是这样的: 状态栏和导航栏不应相互碰撞。我在堆栈溢出上看到了很多这样的问题,但它们对我没有多大帮助。 有些问题说我应该使用这个“self.edgesForExtendedLayout=UIRectEdgeNone”;但它不起作用。有人说,我应该删除导航栏并将其嵌入导航控制器中,但由于我的

  • 在Bootstrap 4中,如何更改导航栏的背景颜色?twbsColor的代码不起作用。我想让背景颜色变成不同的颜色,字体颜色变成白色。

  • 我需要红色的状态栏和白色的前景为我的整个应用程序。 我用的是Flatter_statusbarcolor软件包。 到目前为止,我做了以下工作: 在pubsec中添加了该包。yaml 在我的主机上导入了这个包。dart文件 在MyApp类的中添加了以下代码行 结果: 状态栏的颜色是红色(正常工作)。 前景颜色为白色。但重启时变为黑色。在热重新加载时,变为白色。但重启时,又变为黑色。 以下是我的完整代

  • 有人注意到iPhone 6模拟器的状态栏颜色没有使用正确的样式吗? 我将设置为并将设置为。 这适用于iOS8上除6和6 Plus以外的所有手机。在我的appDelegate中,我可以使用但这不会为启动屏幕设置它。它仍然需要黑暗的时候,我想轻内容。有人能解决这个问题吗。我需要在plist中添加新项目吗?

  • 状态栏文字颜色 sdk状态栏文字的颜色可以设置为白色或者黑色 , 设置方法如下: /** @param isDark true为黑字模式, false为白色模式 */ Ntalker.getInstance().statusBarDarkMode(boolean isDark);