ios 导航条字体颜色隐藏后,状态栏的字体颜色怎么设置

拒绝访问 | www. | 百度云加速
请打开cookies.
此网站 (www.) 的管理员禁止了您的访问。原因是您的访问包含了非浏览器特征(39e95b88b0c44382-ua98).
重新安装浏览器,或使用别的浏览器状态栏的字体为黑色:UIStatusBarStyleDefault
状态栏的字体为白色:UIStatusBarStyleLightContent
一、在info.plist中,将View controller-based status bar appearance设为NO
状态栏字体的颜色只由下面的属性设定,默认为白色:
// default is UIStatusBarStyleDefault
[UIApplication sharedApplication].statusBarStyle
解决个别vc中状态栏字体颜色不同的办法
1、在info.plist中,将View controller-based status bar appearance设为NO.
2、在app delegate中:
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightC
3、在个别状态栏字体颜色不一样的vc中
-(void)viewWillAppear:(BOOL)animated{
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleD
-(void)viewWillDisappear:(BOOL)animated
[super viewWillDisappear:animated];
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightC
二、在info.plist中,将View controller-based status bar appearance设为YES,或者没有设置。
View controller-based status bar appearance的默认值就是YES。
如果View controller-based status bar appearance为YES。
则[UIApplication sharedApplication].statusBarStyle 无效。
用下面的方法:
1、在vc中重写vc的preferredStatusBarStyle方法。
-(UIStatusBarStyle)preferredStatusBarStyle
return UIStatusBarStyleD
2、在viewDidload中调用:[self setNeedsStatusBarAppearanceUpdate];
但是,当vc在nav中时,上面方法没用,vc中的preferredStatusBarStyle方法根本不用被调用。
原因是,[self setNeedsStatusBarAppearanceUpdate]发出后,
只会调用navigation controller中的preferredStatusBarStyle方法,
vc中的preferredStatusBarStyley方法跟本不会被调用。
解决办法有两个:
设置navbar的barStyle 属性会影响status bar 的字体和背景色。如下。
//status bar的字体为白色
//导航栏的背景色是黑色。
self.navigationController.navigationBar.barStyle = UIBarStyleB
//status bar的字体为黑色
//导航栏的背景色是白色,状态栏的背景色也是白色。
//self.navigationController.navigationBar.barStyle = UIBarStyleD
自定义一个nav bar的子类,在这个子类中重写preferredStatusBarStyle方法:
MyNav* nav = [[MyNav alloc] initWithRootViewController:vc];
self.window.rootViewController =
@implementation MyNav
- (UIStatusBarStyle)preferredStatusBarStyle
UIViewController* topVC = self.topViewC
return [topVC preferredStatusBarStyle];
本文已收录于以下专栏:
相关文章推荐
第一步:在info.plist中添加一个字段:View controller-based status bar appearance 设置为NO
第二步:在一个所有界面都继承的父...
以及设置info.plist  中设置为NO
对于机器学习,很多人的观点是:机器学习技术是今后所有技术人员都绕不过的一个门槛。 那么,普通程序员该学习机器学作为一名对机器学习心有向往的程序员,我该以什么样的姿势开始呢?
很多需求中,我们可能都需要改变系统默认的状态栏的颜色,今天写程序时,发现以前的方法都过时了,所以总结一下下:
在iOS9之前,当我们需要改变状态栏颜色时,可以直接在AppDelegate里面设置,如...
状态栏默认(黑色)风格:UIStatusBarStyleDefault
状态栏白色风格:UIStatusBarStyleLightContent
一、在info.plist中,将View contr...
工作中会经常遇到需要修改状态栏显示的颜色,实践发现,修改其实很简单,只需要在项目的infoPlist文件中添加一项:View controller-based status bar appearanc...
是指iOS屏幕最上面的20像素高的部分,分为前景部分和背景部分
前景部分:包括显示电池、时间等部分;
背景部分:包括显示黑色或者图片的背景部分;
改变状态栏的方法View controll...
由于公司项目的欢迎页是白色的,,修改状态栏颜色后,导致状态栏的白色字体完全被覆盖了,联想到之前在QQ、UC等一些app上都见到过状态栏的字体是深色的,想着,,必定有解决的方案。于是,有了本篇b...
1.在工程plist文件中添加 属性 “View controller-based status bar appearance” 并设置为NO
2. applica...
状态栏的字体为黑色:UIStatusBarStyleDefault
状态栏的字体为白色:UIStatusBarStyleLightContent
一、在info.plist中,将View cont...
他的最新文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)#import "ZCFirstController.h"
#import "TMapView.h"
@interface ZCFirstController ()&TMapViewDelegate&
/** 地图 */
@property (nonatomic ,strong) TMapView * mapV
@property (nonatomic ,strong) UIImageView * imageViewB
@implementation ZCFirstController
- (void)viewDidLoad {
& & [super viewDidLoad];
& & //返回键
& & [self setBackItem];
& & //透明导航栏
& & [self setNaVationBar];
& & //初始化地图
& & [self addMapView];
- (void)setBackItem {
& & UIBarButtonItem *left = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"bankhui_homePage_saoyisaoback"] style:UIBarButtonItemStylePlain target:self action:@selector(back)];
& & self.navigationItem.leftBarButtonItem =
- (void)back
& & [self.navigationController popViewControllerAnimated:YES];
- (void)setNaVationBar {
& & // 透明状态栏的延伸
& & self.edgesForExtendedLayout = UIRectEdgeN
& & //可有可无
& & [self.navigationController.navigationBar setBackgroundImage:nil
&& & & & & & & & & & & & & & & & & & & & & & & & forBarPosition:UIBarPositionAny
&& & & & & & & & & & & & & & & & & & & & & & & & & & barMetrics:UIBarMetricsDefault];
& & //一条线
& & self.navigationController.navigationBar.shadowImage = [UIColor imageWithColor:[UIColor colorWithRed:0.29f green:0.58f blue:0.92f alpha:1.00f]];//(等号后自定义方法)
- (void)viewWillAppear:(BOOL)animated
& & [super viewWillAppear:animated];
& & //设置状态栏背景字体颜色
& &//info.plist中将View controller-based status bar appearance设为YES 或者不设置时不生效(在有导航栏控制器时使用系统自带设置状态栏颜色方法 pre...不生效,这种方法没这个限制)应设置:
Status bar style & &&UIStatusBarStyleLightContent
View controller-based status bar appearance & NO
& &//(图片设置会导致全局白字,下面这句可以在个别界面设置成黑字)
& & [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleD
& & //导航栏透明设置
& & self.imageViewBar = self.navigationController.navigationBar.subviews.firstO
& & self.imageViewBar.alpha = 0;
-(void)viewWillDisappear:(BOOL)animated {
& & //恢复白色
& & [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightC
& &&//恢复不透明
& & self.imageView.alpha = 1;
阅读(...) 评论()输入关键字或相关内容进行搜索
配置系统状态栏样式\niOS平台可支持对系统状态栏样式的配置,在应用manifest.json文件的plus-&distribute-&apple下添加UIStatusBarStyle进行控制,默认值为&UIStatusBarStyleDefault&。
UIStatusBarStyleDefault
默认样式,iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为黑字(适用于浅色背景)
UIStatusBarStyleBlackOpaque
深色背景色样式,iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为白色(适用于深色背景)
UIStatusBarStyleBlackTranslucent
iOS6及以下系统在启动界面为灰底白字,iOS7及以上系统与UIStatusBarStyleBlackOpaque效果一样\nApp云端打包设置系统状态栏样式操作方式:
双击应用的manifest.json文件,切换到“代码视图”,在plus-&statusbar下添加style节点:
Ctrl+S保存,并提交App云端打包设置系统状态栏背景颜色(iOS7及以上生效)\niOS平台可支持对系统状态栏背景颜色的配置,在应用manifest.json文件的plus-&statusbar下添加background进行控制:
值为字符串类型,格式为&#RRGGBB&格式,如红色为&#FF0000&;默认值为白色。App云端打包设置系统状态栏背景颜色操作方式双击应用的manifest.json文件,切换到“代码视图”,在statusbar节点下添加background节点:
Ctrl+S保存,并提交App云端打包运行期动态设置系统状态栏背景颜色\n调用plus.navigator.setStatusBarBackground(rgb)动态修改系统状态栏背景颜色:
rgb为颜色字符串值,格式为#RRGGBB。function setStatusbarRed(){
// 设置系统状态栏背景色为红色
plus.navigator.setStatusBarBackground(&#FF0000&);
\n注:仅在iOS7.0及以上版本才支持设置系统状态栏背景色设置状态栏透明并且页面内容通顶,参考Android平台
Android平台自定义系统状态栏样式,参考。Android离线打包在AndroidManifest.xml中配置主Activity的皮肤(android:theme)来设置:
android:name=&io.dcloud.PandoraEntry&
android:configChanges=&orientation|keyboardHidden|screenSize&
android:label=&@string/app_name&
android:launchMode=&singleTask&
android:screenOrientation=&sensor&
android:windowSoftInputMode=&adjustResize&
android:theme=&主Activity的皮肤&
android:exported=&true&&
&intent-filter&
&action android:name=&android.intent.action.MAIN&/&
&category android:name=&android.intent.category.LAUNCHER&/&
&/intent-filter&
&/activity&
\n后续云端打包会封装常用的皮肤样式。参考:
真的好垃圾,无论如何设置,都是黑色字体
离线打包设置不了透明的小伙伴们看这里,WebAppController 下面有一个statusbar的view
这是它的高度设置:
【Swift】var kStatusBarHeight:CGFloat = 20
【Obj-C】#define kStatusBarHeight 20.f
设置成0让它消失就好了
然后在html中用这个设置状态栏颜色
plus.navigator.setStatusBarStyle(&UIStatusBarStyleBlackTranslucent&);
UIStatusBarStyleDefault 默认风格(白色状态栏上有黑色文字)
UIStatusBarStyleBlackTranslucent 黑色透明状态栏,白色文字
UIStatusBarStyleBlackOpaque 黑色不透明状态栏,白色文字
(引用自@xinz的评论)
&statusbar&:{
&style&:&UIStatusBarStyleBlackOpaque&
你是这样写的吗?我改过之后,连电脑真机运行没用,必须要云打包才能看效果吗?
我比你们遇到的问题更坑,我在本地是生效的,打包之后就不生效了。
问题1:ios状态栏的背景怎么设置为透明底?
ios云端打包,字体颜色变为白色,但是状态栏背景色改变不了
&StatusBarBackground&: &#17191E&,
&UIStatusBarStyle&: &UIStatusBarStyleBlackOpaque&,
我想知道, 现在,安卓还是只有上面这一种方法 修改系统状态栏吗??日 18:03:14
打包后 运行在真机上
才能看到效果么?
ios设置字体颜色必须要在云端打包才能生效 ?
android任务栏无法直接设置,求快快解决一下呗...
setStatusBarBackground(),设置状态栏背景颜色同样是写在manifest.json代码试图里面吗?
Android平台的样式是由其主体决定的,暂时无法通过API动态控制
大概什么时候能支持Android?
6.6.1版本确认存在此问题,会尽快解决并更新
更新了打包服务器之后,iOS客户端&UIStatusBarStyle&: &UIStatusBarStyleBlackOpaque&,怎么变成黑字啦啊啊啊,原来是白字的
设置状态栏字体颜色那三个值UIStatusBarStyleDefault,UIStatusBarStyleBlackOpaque,UIStatusBarStyleBlackTranslucent我全都试了一遍,没有任何效果,也没有任何区别,全都是白底黑字。IOS8.4.1,到底怎么处理啊?
真机运行无法看到此效果,需要提交App云端打包才能生效。
这个设置只有打包之后才能生效吗?开发的时候不能测试?
状态栏的文字颜色无法更改,在iOS7以上默认为白底黑字
将UIStatusBarStyle样式设置为UIStatusBarStyleBlackOpaque时文字颜色为白色
你好,再问一下状态栏设置深色后,状态栏文字的颜色是否有方法能设置为白色?
我在manifest里设置了。同时在index页面用了setStatusBarBackground方法设置。其他页面切换过程中均未设置。
在manifest.json中配置的还是通过plus.navigator.setStatusBarBackground方法设置的?
页面切换的过程中有没有调用此方法设置了其它颜色?
你好,设置后只在主页生效,一旦发生页面切换就会失效。请问该怎么解决?
可以设置,修改*Info.plist文件中的UIStatusBarStyle值即可。
如果要修改状态栏背景颜色,则修改StatusBarBackground字段值:
&key&StatusBarBackground&/key&
&string&#FFFFFF&/string&
不打包能在本地设置吗?
UIStatusBarStyleBlackTranslucent
和UIStatusBarStyleBlackOpaque
均是不透明,白色文字啊!!!!
上面提到的在ios设置状态栏字体颜色,UIStatusBarStyle的支持以下取值:
UIStatusBarStyleDefault
默认风格(白色状态栏上有黑色文字)
UIStatusBarStyleBlackTranslucent
黑色透明状态栏,白色文字
UIStatusBarStyleBlackOpaque
黑色不透明状态栏,白色文字
要回复文章请先或用户名:荣保红
文章数:111
访问量:143785
注册日期:
阅读量:1297
阅读量:3317
阅读量:456485
阅读量:1141140
[匿名]appleFans:
51CTO推荐博文
状态条Status Bar
[UIApplication sharedApplication].statusBarHidden = YES;
// iOS3.2+支持[application setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
&statusBarHidden属性支持在iOS2.0+,setStatusBarHidden:animated:方法在iOS3.2中开始取消了,而采用了setStatusBarHidden:withAnimation:方法。
上述方法只能实现在程序跳过loading(即 启动画面)的时候才能隐藏状态栏。如果想要在启动画面开始即隐藏状态栏,则要修改app的info.plist文件,新增 UIStatusBarHidden键(Status bar is initially hidden),其值是YES。
同理:对于状态栏的颜色改变,也要分别从两处着手,代码[[UIApplicationsharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque];仅仅改变了启动画面之后的视图上的状态栏,要让App应用在启动画面之时就改变默认颜色,则要修改info.plist文件,新增UIStatusBarStyle键(Status bar style),其值有Opaque black style、Transparent black style和默认的Gray style。
导航条Navigation Bar
[self.navigationController setNavigationBarHidden:YES];
选项卡TabBar
[self.tabBarController.tabBar setHidden:YES];
此方法的问题:虽然tabBar栏被隐藏了,但该区域成一片空白区,无法被其他视图使用。
对于navigationController+tabBarController的结构,可以在push下一级的 childController之前将childController的hidesBottomBarWhenPushed属性设为YES。比如,可以在 childController的初始化方法中做这件事,代码如下:
1 - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization.6
self.hidesBottomBarWhenPushed = YES;
650) this.width=650;" alt="" src="/OutliningIndicators/ContractedBlock.gif" class="code_img_closed" id="code_img_closed_428ccefc-094b-4d74-ad41-74ce0be362b4" />View Code
1 - (void)viewWillAppear:(BOOL)animated
[self setFullScreen:YES];
5 - (void)viewWillDisappear:(BOOL)animated
[self setFullScreen:NO];
- (void)setFullScreen:(BOOL)fullScreen
// 状态条12
[UIApplication sharedApplication].statusBarHidden = fullS
// 导航条14
[self.navigationController setNavigationBarHidden:fullScreen];
// tabBar的隐藏通过在初始化方法中设置hidesBottomBarWhenPushed属性来实现16
了这篇文章
类别:┆阅读(0)┆评论(0)

我要回帖

更多关于 ios 设置导航条字体 的文章

 

随机推荐