美文网首页
iOS在当前视图中推出另外一个背景透明的视图控制器

iOS在当前视图中推出另外一个背景透明的视图控制器

作者: 何色相撩我心弦 | 来源:发表于2019-03-01 10:58 被阅读0次

viewcontroller1 为当前视图控制器, viewcontroller2 为需要在 viewcontroller1上展示的底部透明的视图控制器

1.在viewcontroller1 要触发该功能的事件添加如下代码

Viewcontroller2 *vc2 = [[Viewcontroller2 alloc]init];

vc2.view.backgroundColor=[UIColor colorWithRed:1 green:1 blue:1 alpha:0.2];
//注意:要展示的那个底色透明的视图控制器 设置透明属性必须在这里提前设置
[self presentViewController:vc2 animated:YES completion:nil];

2.在 vc2 中的viewDidLoad 方法中添加
self.modalPresentationStyle = UIModalPresentationCustom;

上面的代码片段在ios8.0系统上是没有任何错误的的,对于ios7.0系统这时候弹出的视图会存在背景界面为黑色的情况,所以作如下修改:

if(iOS(8.0)){

viewcontroller2.modalPresentationStyle = UIModalPresentationOverCurrentContext;

}else{

viewcontroller1.modalPresentationStyle = UIModalPresentationCurrentContext;

}

显示界面的背景颜色直接在要弹出的界面里面修改:

viewcontroller2.view.backgroundColor=[UIColorcolorWithRed:0green:0 blue:0 alpha:0.5];

相关文章

网友评论

      本文标题:iOS在当前视图中推出另外一个背景透明的视图控制器

      本文链接:https://www.haomeiwen.com/subject/rrhhpftx.html