iPhone半透明状态栏与导航条错位的解决办法

本文介绍了解决iPhone状态栏在使用UINavigationController时出现错位的解决办法,通过使用UIViewController的属性wantsFullScreenLayout来解决子view向下偏移20像素的问题。同时,文章还演示了如何在导航器中添加自定义字体的标题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

iPhone半透明状态栏与导航条错位的解决办法 
iPhone的状态栏可以设置成半透明, 这是众所周知的, 用UINavigationController,在页面切换时, 如果你的子viewController的view是全屏的(480*320) 就会出现错位, 表现是所以的子view会向下偏移了 20像素 (就是状态栏的高度). 
我搜索了好长时间也没有找到答案, 于是自己去看官方文档, 结果发现了这个方法, 这是UIViewController的一个属性. 
    wantsFullScreenLayout 
看字面意思就很好理解(苹果的方法名都很好理解, 还是带时态和语法的 很人性化), 就是”我要全屏布局” 这样错位的问题就解决了



在开发中经常会用到导航器,在导航器中添加标题很简单,如下: 

self.title=@"Elimination phase Day 1"; 
但是如果题目太长,后半部分就变成省略号了,那要实现自定义字体,代码和效果如下:  
   
 
UILabel *titleText = [[UILabel alloc] initWithFrame: CGRectMake(0, 0, 200, 20)]; 
    titleText.backgroundColor = [UIColor clearColor]; 
    [titleText setFont:[UIFont systemFontOfSize:15.0]]; 
    [titleText setText:@"Elimination phase Day 1"]; 
    self.navigationItem.titleView=titleText; 
    [titleText release];
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值