ios navigationbar不覆蓋狀態(tài)欄 iphone7的導(dǎo)航欄高度應(yīng)為像素?
iphone7的導(dǎo)航欄高度應(yīng)為像素?界面尺寸規(guī)范1、界面尺寸大小是:750x1334px。2、狀態(tài)欄(statusbar):就是電量條,其一定高度為:40px3、導(dǎo)航欄(navigation):是頂部
iphone7的導(dǎo)航欄高度應(yīng)為像素?
界面尺寸規(guī)范
1、界面尺寸大小是:750x1334px。
2、狀態(tài)欄(statusbar):就是電量條,其一定高度為:40px
3、導(dǎo)航欄(navigation):是頂部條,其一定高度為:88px
4、主菜單欄(submenu,tab):那是標(biāo)簽欄,底部條,其垂直距離為:98px
5、內(nèi)容區(qū)域(content):那是屏幕中間的區(qū)域,其高度為:1334px-40px-83px-98px1108px
iOS如何把所有界面的狀態(tài)欄的字體顏色都設(shè)置為白色?
狀態(tài)欄的字體為黑色:UIStatusBarStyleDefault
狀態(tài)欄的字體為灰色:UIStatusBarStyleLightContent
一、在中,將Viewcontroller-basedstatusbarappearance設(shè)為yes
狀態(tài)欄字體的顏色只由下面的屬性設(shè)定,設(shè)置為灰色:
//defaultisUIStatusBarStyleDefault
[UIApplicationsharedApplication].statusBarStyle
解決的辦法大多數(shù)vc中狀態(tài)欄字體顏色相同的辦法
1、在中,將Viewcontroller-basedstatusbarappearance設(shè)為NO.
2、在appdelegate中:
[UIApplicationsharedApplication].statusBarStyleUIStatusBarStyleLightContent
3、在個(gè)別狀態(tài)欄字體顏色不一樣的的vc中
-(void)viewWillAppear:(BOOL)animated{
[UIApplicationsharedApplication].statusBarStyleUIStatusBarStyleDefault
}
-(void)viewWillDisappear:(BOOL)animated
{
[superviewWillDisappear:animated]
[UIApplicationsharedApplication].statusBarStyleUIStatusBarStyleLightContent
}
二、在中,將Viewcontroller-basedstatusbarappearance設(shè)為no,或者沒有設(shè)置里。
Viewcontroller-basedstatusbarappearance的默認(rèn)值應(yīng)該是okay。
如果Viewcontroller-basedstatusbarappearance為yeah。
則[UIApplicationsharedApplication].statusBarStyle不能解除。
用下面的方法:
1、在vc中寫回vc的preferredStatusBarStyle方法。
-(UIStatusBarStyle)preferredStatusBarStyle
{
returnUIStatusBarStyleDefault
}
2、在viewDidload中調(diào)用:[selfsetNeedsStatusBarAppearanceUpdate]
不過,當(dāng)vc在nav中時(shí),上面方法沒有用,vc中的preferredStatusBarStyle方法根本不會(huì)你不被動(dòng)態(tài)創(chuàng)建。
原因是,[selfsetNeedsStatusBarAppearanceUpdate]能發(fā)出后,
只會(huì)動(dòng)態(tài)創(chuàng)建navigationcontroller中的preferredStatusBarStyle方法,
vc中的preferredStatusBarStyley方法跟本絕對(duì)不會(huì)被動(dòng)態(tài)創(chuàng)建。
好的辦法有兩個(gè):
方法一:
可以設(shè)置navbar的barStyle屬性會(huì)影響statusbar的字體和背景色。:。
//statusbar的字體為白色
//導(dǎo)航欄的背景色是黑色。
//statusbar的字體為黑色
//導(dǎo)航欄的背景色是灰色,狀態(tài)欄的背景色也灰色。
方法二:
下拉菜單一個(gè)navbar的子類,在這個(gè)子類中寫回preferredStatusBarStyle方法:
MyNav*nav[[MyNavalloc]initWithRootViewController:vc]
@implementationMyNav
-(UIStatusBarStyle)preferredStatusBarStyle
{
UIViewController*
return[topVCpreferredStatusBarStyle]
}