Ios 屏幕边界扩展可见区域

Ios 屏幕边界扩展可见区域,ios,uiview,Ios,Uiview,我试图在主视图的右下角创建一个正方形(50 x 50)UIView,但我不明白为什么它不完全可见。在本例中,从底部只能看到它的尖端。我混淆了一些概念吗 尝试添加自动调整大小掩码: transparentFloater.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin; 尝试添加自动调整大小掩码: transparentFloater.autoresizing

我试图在主视图的右下角创建一个正方形(50 x 50)UIView,但我不明白为什么它不完全可见。在本例中,从底部只能看到它的尖端。我混淆了一些概念吗


尝试添加自动调整大小掩码:

transparentFloater.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin;

尝试添加自动调整大小掩码:

transparentFloater.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin;

你不需要做任何事情,只要把

transparentFloater.backgroundColor = [UIColor redColor];

因为您的视图(自定义)不可见(因为您的主视图颜色和自定义视图颜色相同(白色))可能不可见。我在我的演示项目中尝试了你的代码。这对我来说非常有效。

你不需要做任何事情,只要把

transparentFloater.backgroundColor = [UIColor redColor];

因为您的视图(自定义)不可见(因为您的主视图颜色和自定义视图颜色相同(白色))可能不可见。我在我的演示项目中尝试了你的代码。它对我来说非常有效。

如果我没有错的话,您已经用xib创建了ViewController,并且在视图的属性中,您忘记了提到您正在使用“导航栏作为”顶部栏

原因

因此,在ViewDidLoad中,返回高度为X的view in.xib。但是,由于您可能已经使用UINavigationController加载了viewController,因此加载后,视图的高度会减少44像素

建议

1) 无论何时,当您知道您将在顶部设置导航栏时,请在.xib文件中提及它

为此,单击xib中的视图,并在实用程序区域的属性检查器中选择名为topbar的选项

2) 调用以下api

    NSLog(@"In ViewDidAppear %@",NSStringFromCGRect(self.view.bounds));

  • viewDidLoad
  • 视图显示

    跟踪视野范围内发生的情况


如果我没有记错的话,您已经用xib创建了ViewController,并且在视图的属性中,您忘记了将“导航栏”用作“顶栏

原因

因此,在ViewDidLoad中,返回高度为X的view in.xib。但是,由于您可能已经使用UINavigationController加载了viewController,因此加载后,视图的高度会减少44像素

建议

1) 无论何时,当您知道您将在顶部设置导航栏时,请在.xib文件中提及它

为此,单击xib中的视图,并在实用程序区域的属性检查器中选择名为topbar的选项

2) 调用以下api

    NSLog(@"In ViewDidAppear %@",NSStringFromCGRect(self.view.bounds));

  • viewDidLoad
  • 视图显示

    跟踪视野范围内发生的情况


很抱歉,您有什么问题,我无法获取。根据我的逻辑,在父视图的右下角应该有一个50x50 UIView,但由于某种原因,它不工作。很抱歉,您有什么问题,我无法获取。根据我的逻辑,在父视图的右下角应该有一个50x50 UIView,但出于某种原因,它不工作。我认为您提供的代码在viewDidLoad中。并且,xib文件中的视图大小与设备上的视图大小不同。所以在viewDidLoad视图更改了它的帧之后。自动调整遮罩的大小有助于在右下角保留视图。是的,代码在viewdidload中是正面的,有更好的区域保留它吗?没有。我想没问题。但您应该始终记住,视图可以更改其大小。所以,在添加子视图时,您不应该忘记自动调整掩码(或约束)的大小。并且,xib文件中的视图大小与设备上的视图大小不同。所以在viewDidLoad视图更改了它的帧之后。自动调整遮罩的大小有助于在右下角保留视图。是的,代码在viewdidload中是正面的,有更好的区域保留它吗?没有。我想没问题。但您应该始终记住,视图可以更改其大小。因此,在添加子视图时,不应忘记自动调整遮罩(或约束)的大小。