自定义UIAlertController

最近写了一个自定义弹框,模仿系统UIAlertController,记录一下。

对于弹框,很多情况下还是习惯于写个UIView,但是系统都已经抛弃UIAlertView了,对UIAlertController,内容可能又不符合自己的需求,这。。。好吧,写一个吧。

ok,咱需要一个控制器,MineAlertController,继承自UIViewController,需要一个初始化方法:

+(MineAlertController *)alertWithTitle:(NSString *)title message:(NSString *)message handle:(void (^)())handle;

之所以用类方法创建,是因为我们需要对这个控制器做一些处理,至于参数,根据自己需要调整吧,好了,到这里,重点来了,弹出模式呢?

找找控制器的modalPresentationStyle,有个UIModalPresentationOverCurrentContext,做什么的呢,字面意思就是透过当前上下文,这就是我们需要的,浮在当前控制器之上。

+(MineAlertController *)alertWithTitle:(NSString *)title message:(NSString *)message handle:(void (^)())handle{

MineAlertController  *controller = [[MineAlertController alloc] init];

contriller.title = title;

...

controller.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;

//主要是这三句

controller.definesPresentationContext = YES;

controller.providesPresentationContextTransitionStyle = YES;

controller.modalPresentationStyle = UIModalPresentationOverCurrentContext;

return controller;

}

剩下的就是控制器显示的内容样式了,根据需要写了。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值