代码之家  ›  专栏  ›  技术社区  ›  codercat Piyush Dubey

为什么导航栏和视图之间显示黑屏

  •  2
  • codercat Piyush Dubey  · 技术社区  · 10 年前

    在我的项目中,有两个视图控制器(第一个和第二个)嵌入到导航控制器中,半透明设置为“否”,但我在第一个视图控制器中使用了提示。

    我使用了自动布局。如果你知道有无自动布局的解决方案,我会很高兴

    enter image description here

    enter image description here

    当我按下第二个视图控制器时。我在导航栏下看到了一些黑屏

    enter image description here

    我尝试了很多概念,但都有所帮助。

    帮助我如何修复。

    注:

    不要说设置“半透明”为“是”。我知道如果我设置为“是”,它会完美工作。但我需要用半透明来实现

    更新1:图像已更新。

    3 回复  |  直到 10 年前
        1
  •  4
  •   bhavya kothari    10 年前

    我已关闭自动布局-并找到以下解决方案

    先查看控制器

    -(void)viewWillDisappear:(BOOL)animated
    {
         self.view.backgroundColor = [UIColor whiteColor];
    
    }
    

    ViewController秒

     -(void)viewWillLayoutSubviews
     {
        AppDelegate *appDelegate = [[UIApplication sharedApplication]delegate];
        appDelegate.window.backgroundColor = [UIColor whiteColor];
        self.myView.frame = CGRectMake(0.0, 64.0, 320.0, 504.0);
    
     }
    

    我希望这有帮助,因为Autolayout也很好

        2
  •  0
  •   codercat Piyush Dubey    10 年前

    我用了这个代码。但我不会提供任何硬编码解决方案。如果你知道其他解决方案,请分享

    [UIView animateWithDuration:0.3 animations:^{
            self.view.frame=CGRectMake(0, self.navigationController.navigationBar.frame.size.height+20, 320, 504);
    }];
    
        3
  •  -1
  •   Marc    10 年前

    尝试设置navigationView的 backgroundColor .