`
zxs19861202
  • 浏览: 915367 次
  • 性别: Icon_minigender_1
  • 来自: 湖北—》上海
社区版块
存档分类
最新评论

ios7 改变状态栏颜色

    博客分类:
  • ios
 
阅读更多

ios7 状态栏默认为白底黑色,怎么改变为黑底白字呢,以下为步骤

 

第一步:在Plist里面添加 UIViewControllerBasedStatusBarAppearance   设置为 :NO        
第二步:在入口类中写:[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; 

 

 

最近为IOS7升级app,遇到了状态栏被导航栏遮住的问题,拿出来分享一下。 这里说的是UINavigationBar,自定义的不用看了

绝大多数情况下,只要用下面这两句话就搞定了

self.navigationController.navigationBar.translucent = NO;

self.tabBarController.tabBar.translucent = NO;



但有时会遇到状态栏一直是一片漆黑


经过多方排查和查找资料,发现这么一句。


      UINavigationController will alter the height of its UINavigationBar to either 44 points or 64 points, depending on a rather strange and undocumented set of constraints. If the UINavigationController detects that the top of its view’s frame is visually contiguous with its UIWindow’s top, then it draws its navigation bar with a height of 64 points. If its view’s top is not contiguous with the UIWindow’s top (even if off by only one point), then it draws its navigation bar in the “traditional” way with a height of 44 points. 

This logic is performed by UINavigationController even if it is several children down inside the view controller hierarchy of your application.

     There is no way to prevent this behavior.



意思就是UINavigationBar的高度会自行调整为44或者64,没有确定的预测方法。而之前作为UINavigationBar背景的图片是44高度的。最后换了张64高度,上面留了20px透明的图片搞定,若按找上面的方式状态栏设为黑底的话20px设置为黑色就好了。

比如这个:

 

  • 大小: 4.6 KB
分享到:
评论

相关推荐

    ios-改变状态栏.zip

    总之,改变iOS应用的状态栏外观通常涉及修改`UIViewController`的属性或创建新的窗口层级。通过理解这些机制,开发者可以灵活地适应各种界面设计需求。不过,应始终注意保持用户体验的一致性和质量,避免对系统功能...

    ios7状态栏的显隐demo

    它将展示如何在iOS 7及更高版本中动态控制状态栏的显示和隐藏,这对于那些需要根据用户交互改变界面布局的应用来说非常有用。通过学习和理解这些API的使用,你可以更好地定制你的iOS应用,提供更加出色的用户体验。

    Android自定义状态栏颜色与应用标题栏颜色一致

    不过,从Android 4.4(KitKat)开始,谷歌引入了对自定义状态栏颜色的支持。 要实现这个效果,主要有两种方法: 1. **通过XML设置主题**: 可以在`styles.xml`文件中创建一个新的主题,继承自`Theme.AppCompat`或...

    改变ios状态栏

    在iOS开发中,状态栏...总之,在iOS开发中,通过合理的代码设计和视图管理,我们可以灵活地改变状态栏的显示内容、颜色和样式,以满足不同应用场景的需求。理解并掌握这些技巧,能够使我们的应用更具个性化和专业性。

    仿ios点击状态栏回到顶部功能修改版

    8. **Android权限管理**:如果涉及到改变状态栏的颜色或者透明度,需要确保应用具有相应的系统级权限,例如`SYSTEM_ALERT_WINDOW`权限。 9. **性能优化**:在实现这个功能时,要注意性能优化,避免频繁的滚动操作...

    改变状态栏颜色

    ### iOS 状态栏颜色改变 在iOS中,状态栏颜色通常会根据当前显示的ViewController的背景颜色自动匹配。但如果你想手动设置,可以使用以下方法: 1. **Swift**: ```swift if #available(iOS 13.0, *) { let ...

    iOS 设置状态栏的背景颜色方法

    `UIApplication`提供了对状态栏的一些访问方式,但直接修改状态栏的颜色并不像修改其他UI元素那样简单。 在iOS中,状态栏实际上是一个名为`UIStatusBar`的私有类的实例,它并不直接暴露给我们进行设置。不过,我们...

    顶部状态栏的颜色

    该工程是基于SystemBarTint编写,但是用过之后,你才发现,虽然能更改颜色了,但是我们的布局也...该项目是兼容低版本,虽然颜色是不会改变的,但是布局仍然没有问题的,4.4以及以上的版本,状态栏都可以由我们自己定义更改;

    ios-侧滑返回导航栏颜色变化.zip

    "ios-侧滑返回导航栏颜色变化"这个主题主要关注的是,当用户通过手势侧滑返回上一个视图控制器时,导航栏颜色动态变化的效果。在iOS应用中,这种效果通常用于提供视觉反馈,让用户知道他们正在执行的操作。 首先,...

    iOS 自定义视图覆盖状态栏StatusBar

    在iOS开发中,状态栏(StatusBar)是显示时间、网络信号、电量等系统信息的区域。自定义状态栏可以为应用程序增添独特的视觉效果,提升用户体验。本教程将深入讲解如何在不隐藏状态栏的情况下,利用UIWindow视图来...

    ios 自定义标题栏状态栏

    1. **设置颜色**:通过`UIStatusBarStyle`,可以改变状态栏文字颜色。例如,设置为白色: ```swift UIApplication.shared.statusBarStyle = .lightContent ``` 2. **透明状态栏**:使用`UIViewController`的`...

    iOS中状态栏的基本使用方法汇总

    一、状态栏与导航栏 状态栏:显示时间、电池等信息 ...iOS状态栏可以设置显示和隐藏,也可以设置文字的颜色。通过修改info.plist中的View controller-based status bar appearance属性为NO或者YES,状态栏

    iOS状态栏、导航栏的一些笔记分享

    在iOS开发中,状态栏和导航栏是用户界面的关键组成部分,它们提供了系统信息和应用程序导航。本文将深入探讨如何在iOS应用中管理这两个组件。 首先,状态栏显示重要的设备信息,如时间、电池状态和网络连接。在iOS...

    ios项目适配ios6 ios7

    2. Status Bar和Top Layout Guide:iOS7中,状态栏(Status Bar)与应用内容之间的距离增大,因此在布局时需考虑到这一变化。顶部布局指南(Top Layout Guide)是Auto Layout的一部分,用于指示状态栏下方的区域。在...

    iphone 完美状态栏

    然而,一些开发者通过越狱手段开发了插件,允许用户自定义状态栏的样式,比如改变字体、颜色、图标等,以达到“完美状态”的效果。 3. **越狱环境**:要实现这种自定义,用户必须先对iPhone进行越狱。越狱是解除...

    修改状态栏

    7. **状态栏颜色**:状态栏的颜色通常会根据背景色自动匹配,但有时我们需要自定义颜色。在iOS 13及以上版本,可以使用`UIStatusBarAppearance`的`customStyle`属性。在iOS 12及以下版本,可以通过设置`...

    导航栏AND状态栏

    若要改变状态栏文字和图标颜色,需要利用`android:windowLightStatusBar`属性,当其值设为`true`时,状态栏的图标和文字将变为亮色,反之则为暗色。 对于导航栏,通常位于屏幕底部,包含多个可点击的图标或按钮,...

    IOS 自定义标签栏

    3. **状态维护**:每个标签按钮的状态(选中/未选中)需要维护,可以设置一个变量来跟踪当前选中的按钮,并根据该状态改变按钮的外观,例如更改文字颜色或背景色。 4. **数据驱动**:若标签栏上的内容需要动态更新...

    类似ios点击状态栏回到顶部功能

    在Android中,状态栏可以通过透明化或自定义颜色等方式进行个性化设置。为了实现点击状态栏回到顶部的功能,我们需要监听用户的触摸事件,并根据触摸位置判断是否在状态栏区域内。 以下是实现该功能的主要步骤: 1...

    qtstatusbar:Qt的StatusBar允许在Android和iOS上设置状态栏的颜色和主题

    `qtstatusbar`项目是针对Qt开发的一个扩展,它提供了在Android和iOS平台上自定义状态栏颜色和主题的功能。在本文中,我们将深入探讨Qt的StatusBar组件以及如何使用`qtstatusbar`来优化移动应用的用户体验。 首先,...

Global site tag (gtag.js) - Google Analytics