ios - 不能绕过 UIViewController 的所有角落
<p><p>我正在尝试绕过 UIViewController 的所有角落。在我的 ViewController 中,我有以下内容:</p>
<pre><code> override func viewDidLoad()
{
super.viewDidLoad()
let maskLayer = CAShapeLayer()
maskLayer.path = UIBezierPath(roundedRect: view.bounds, byRoundingCorners: .AllCorners, cornerRadii: CGSize(width: 10, height: 10)).CGPath
view.layer.mask = maskLayer
let margin = CGFloat(10)
self.view.frame = CGRect(x: margin, y: margin, width: view.frame.size.width - margin*2, height: view.frame.size.height - margin * 2)
}
</code></pre>
<p>在呈现上述 Controller 的 ViewController 中,我有:</p>
<pre><code>let storyboard = UIStoryboard(name: "Subscriptions", bundle: nil)
let subscriptionsViewController = storyboard.instantiateViewControllerWithIdentifier("subscriptionsViewController") as! SubscriptionsViewController
addChildViewController(subscriptionsViewController)
view.insertSubview(subscriptionsViewController.view, aboveSubview: view)
subscriptionsViewController.didMoveToParentViewController(self)
</code></pre>
<p>这很好地展示了新的 Controller ,但是只有左上角是圆形的,其他的都不是。有什么想法我可能在这里做错了吗?谢谢!</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p><br/>
<strong>您在这里发布了错误的问题!</strong> <br/>
因为<code>**cornerRadius**</code>是一个<code>CALayer</code>的属性,它与一个<code>UIView</code>相关联。 ViewController 不能有,但它的 View 属性可以有。</p>
<p>照原样 - 试穿
在 Objective-C 中(在 Swift 中也一样):</p>
<pre><code>yourViewControllerToPresent.view.layer.cornerRadius = 3.0f//floatValue;
yourViewControllerToPresent.view.layer.masksToBounds = YES;
</code></pre></p>
<p style="font-size: 20px;">关于ios - 不能绕过 UIViewController 的所有角落,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/35982528/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/35982528/
</a>
</p>
页:
[1]