UIView的默认样式有圆角?(UIView default styling has rounded

2019-06-26 03:49发布

我使用的是UIPopoverController显示UIView 。 布局有点类似UISplitViewController所以这是非常奇怪的期待对“详细视图”圆角,因为它留下了小的差距。 我一直没能找到所有与具有此问题的其他人任何东西,但这些圆角似乎是默认样式。 是否有可能将其删除?

事情可能帮助:

  • 我从笔尖文件加载我的看法,但我目前没有做出修改默认UIView
  • 我尝试设置clipsToBound = NOviewDidLoad
  • 我尝试设置layer.cornerRadius = 0viewDidLoad

看起来也似乎是在视图的顶部影子,但它是很难说。 有没有什么办法可以刚刚摆脱这一切的默认样式的? 我只想要一个空白的正方形。

Answer 1:

还有就是让你UIPopoverController内的观点没有圆角没有支持的方法。 该UIPopoverController的内部代码添加你的看法与圆角的观点,即剪辑边界。

有可能是做一个hackish的方式,即等待,直到显示UIPopoverController,然后通过所有视图的父母的穿越和设置他们全部有cornerRadius = 0;clipsToBounds = NO; ,但即使你找到一个解决方案可能无法与iOS版的所有版本不兼容,如果苹果在未来的变化UIPopoverController内部的一些代码,那么你的解决方案可能会断裂。

如果你真的想这样做,然后去最好的办法是创建自己的类,它模仿UIPopoverController功能。



Answer 2:

与圆角的黑色渐变的颜色的帧是默认UIPopoverController。 但是,您可以使用自定义类设置背景图。 这里试试下面的链接。

改变颜色导航控制器在酥料饼



Answer 3:

对于任何人谁使用UIPopoverPresentationController ,下面应该工作。

override open func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    view.superview?.layer.cornerRadius = 0
}


文章来源: UIView default styling has rounded corners?