objektif-c - Apabila menetapkan NavigationBar menjadi telus sepenuhnya, statusBarStyle tidak boleh ditetapkan kepada Light
迷茫
迷茫 2017-05-02 09:32:46
0
1
828

Apabila saya menolak untuk menetapkan NavigationBar pengawal paparan semasa supaya telus sepenuhnya,

- (void)viewDidLoad {
    [super viewDidLoad];
//     Do any additional setup after loading the view from its nib.
    //设定字体颜色
    self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
    //设定背景图片为空
    [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
    //半透明
    //self.navigationController.navigationBar.translucent = YES;
    //
    //self.edgesForExtendedLayout = UIRectEdgeNone;
}

- (UIStatusBarStyle)preferredStatusBarStyle {
    return UIStatusBarStyleLightContent;
}

Walau bagaimanapun, bar status di bahagian atas berwarna hitam sepenuhnya.
VC peringkat atas saya juga menggunakan preferredStatusBarStyle, tetapi tiada masalah dengan paparan Perbezaannya ialah VC peringkat atas menyembunyikan NavigationBar, tetapi apabila menolak ke VC semasa, NavigationBar dipaparkan..
Tolong bantu saya!

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

membalas semua(1)
PHPzhong

终于在stackoverflow找到对应的解答,加上下面这句
self.navigationController.navigationBar.barStyle = UIBarStyleBlack;

Saya mendapati bahawa jika ViewController anda berada di dalam
navigationController maka navigationController's
navigationBar.barStyle menentukan statusBarStyle.

Menetapkan barStyle navigationBar anda kepada UIBarStyleBlackTranslucent
akan memberikan teks bar status putih (cth. UIStatusBarStyleLightContent),
dan UIBarStyleDefault akan memberikan teks bar status hitam (mis.
UIStatusBarStyleDefault).

UIStatusBarStyleDefault).

Perhatikan bahawa ini terpakai walaupun anda menukar sepenuhnya warna
navigationBar melalui barTintColornya.

具体的链接:http://stackoverflow.com/ques...

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan