iOS:为什么我的模态视图上有白色圆角?

Bea*_*red 13 iphone ipad ios

我的iPad应用程序中出现了一个模态视图,由于某种原因,它有白色圆角.

值得注意的是,我在故事板中构建了这个模型视图,而不是以编程方式构建.但是,在我的viewWillAppear方法中,我正在设置角半径,如此...

- (void)viewWillAppear:(BOOL)animated{
    [super viewWillAppear:animated];
    self.view.layer.cornerRadius = 6.0f;
}
Run Code Online (Sandbox Code Playgroud)

当我将值设置为6以上时,白色角落变得可见.如果没有显示这些白色圆角,如何设置更高的值?

非常感谢您的智慧!

Nat*_*nSr 17

您的视图控制器使用的是什么类型的演示文稿,您的问题很模糊,所以我假设您正在使用表单.解决方案是将superview的背景颜色设置[UIColor clearColor]为防止半透明背景出现:

- (void) viewDidAppear:animated
{
    [super viewDidAppear:animated];

    self.view.layer.cornerRadius = 10;
    self.view.layer.masksToBounds = YES;
    self.view.superview.backgroundColor = [UIColor clearColor];
}
Run Code Online (Sandbox Code Playgroud)

在设置之前backgroundColor:

之前

设定后backgroundColor:

后


Luk*_*uke 11

尝试

[self.view superview].layer.cornerRadius = 21.0f;
[self.view superview].layer.masksToBounds = YES;
Run Code Online (Sandbox Code Playgroud)


Joh*_*pia 0

这很奇怪。self.view.layer.masksToBounds = YES;如果有效的话也尝试一下。不过,您可能会失去视图的阴影。

想想看,那个白色的东西可能来自导航栏下方的视图。