ios導航條透明度問題

    # import "HomeViewController"
  // 接手別人寫的項目踩到了一個坑.
 // 有關導航條透明度的問題
 // 此項目的主控制器是通過storyboard創(chuàng)建的,做新功能開發(fā)時,我通過xib創(chuàng)建了一個控制器(TwoViewController),并通過navigationcontroller進行push操作. 
    坑爹的是,寫在TwoViewController中的控件不見了(button控件),距離頂部為0,左邊為50.  機智的我趕緊將頂部約束改為64,控件出來了,緊挨著導航條.
 // 自己寫了個demo去驗證這個問題,得出如下結論:
 // 驗證一.
     /*  通過xib創(chuàng)建子控制器OneViewController,在HomeViewController中用導航控制器進行push操作, OneViewController中的一個控件距離頂部64的距離才能顯示出來,不被導航條遮住.
     如果距離頂部0的距離,也想顯示出來,解決方法,設置導航條的透明度為no
    */
    - (void)viewDidLoad {
       [super viewDidLoad];

       self.navigationController.navigationBar.translucent = NO;
       OneViewController *oneVC = [[OneViewController alloc] init];
       [self.navigationController pushViewController:oneVC animated:YES];

       }
   // 驗證二.
       /*  通過storyboard創(chuàng)建子控制器TwoViewController,導航控制器進行push操作, 一個控件距離頂部為0的距離能夠顯示出來,不被導航條遮住.
設置不設置導航條透明度沒有影響.
       */
      // 不用考慮導航條透明度的問題.沒有深入研究原因.
       UIStoryboard *twoStoryboard = [UIStoryboard storyboardWithName:@"TSYTwoViewController" bundle:nil];
TSYTwoViewController *twoVC = [twoStoryboard instantiateViewControllerWithIdentifier:@"twoVC"];
[self.navigationController pushViewController:twoVC animated:YES];
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容