在我们开发过程中,常常会遇到各种五花八门的弹出框,入行不深时碰到各种问题总想着有没有第三方直接拿来用,但是在使用的过程中常常发现和自己项目有所不同,这个时候除了修改作者的源码,就只能模仿着写了,但是如果没有理清其最基础的原理和思路,感觉就是照搬源码了!
废话不多说,下面就介绍我目前所了解弹出框的两种基础原理,如果各位同学有更佳的想法,可以call我并一起完善这个入门文档哦
方法一
自定义一个和屏幕一样大小的view,设置其颜色及透明度,再在其上面任意添加你想要的view。
注意:父视图view的颜色和透明度设置:
// self.backgroundColor = [UIColor colorWithRed:130/255.0 green:130/255.0 blue:130/255.0 alpha:1];
// self.alpha = 0.4;
//重点 - 别直接设置self的透明度和颜色
self.backgroundColor = [UIColor colorWithWhite:0 alpha:0.1];
直接上代码更直观
创建完后,直接在你控制器点击事件中实例化并show就行
ZLAlertView *zl = [[ZLAlertView alloc]init];
[zl show];
这个简单明了,只要把背景图和弹出view显示和隐藏弄出来,接下来各种样式的弹出无非就是加动画,加不同的弹出控件而已。
方法二
第二种可以present到一个新的控制器VC,该VC设置其透明度和背景颜色,再在VC上进行各种操作了,亲测有效。
上面就是目前所知道的两种弹出框基础原理,适合入门小生借鉴,大神勿喷!!
如果你有更好的原理,请及时告诉我,我会及时更新分享给大家!1804094055@qq.c