移除 uiviewcontroller view ipad 的圆角

Posted

技术标签:

【中文标题】移除 uiviewcontroller view ipad 的圆角【英文标题】:Remove rounded corner for uiviewcontroller's view ipad 【发布时间】:2013-02-20 10:07:51 【问题描述】:

我必须从UIViewUIViewcontroller 中删除圆角。这是的图片

我正在展示详细视图

detailView.modalPresentationStyle = UIModalPresentationFormSheet;

我想呈现UIViewcontroller 不带圆角的视图。 有人对这个问题有想法吗?

【问题讨论】:

【参考方案1】:
//You will have to link to the QuartzCore library
#import <QuartzCore/QuartzCore.h>

- (void)viewWillAppear:(BOOL)animated

    //set border radius on visibility
    self.view.layer.cornerRadius = 0;


- (void) didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 

    //for some reason the cornerRadius resets itself on orientation change
    self.view.layer.cornerRadius = 0;
 

self.view 可以在你展示的 ViewController 中查看。

【讨论】:

感谢您回答 Bhargavi 我已经尝试过了,但没有写在 didRotateFromInterfaceOrientation 方法中。接力感谢回答。 很好的答案 - 但是您应该包括对超类的调用 ([super viewWillAppear:animated];) 或 UITableViewControllers 中自动取消选择行之类的东西将停止工作。 @GrahamPerks 是的,我同意你的建议。但我只是想说明在哪里写“cornerRadius”。 就我而言,我不得不使用self.view.superview.layer.cornerRadius = 0

以上是关于移除 uiviewcontroller view ipad 的圆角的主要内容,如果未能解决你的问题,请参考以下文章

UIViewController setView nil 自动从 superview 中移除

UIViewController - View1、View2、View 3依次显示

覆盖 UIViewController 的 view 属性

UIViewController.View.Window 在 ViewDidLoad 方法中为空

在 UIViewController 的 loadView 中确定 self.view 的大小

UIViewController - 无法通过 IBOutlet 更改 vcontroller.view 中的图像