新建NotDismissAlertView类,继承UIAlertView。
设置控制是否消失的标示符
重写 在-(void)dismissWithClickedButtonIndex:(NSInteger)buttonIndex animated:(BOOL)animated代理方法里判断
具体代码如下:
NotDismissAlertView.h:
#import@interface NotDismissAlertView : UIAlertView
@property(nonatomic, assign) BOOL notDisMiss;
@end
--------------------------------------
NotDismissAlertView.m:
#import "NotDismissAlertView.h"
@implementation NotDismissAlertView
-(void)dismissWithClickedButtonIndex:(NSInteger)buttonIndex animated:(BOOL)animated {
if (_notDisMiss)
{
return;
}
[super dismissWithClickedButtonIndex:buttonIndex animated:animated];
}
@end
-------
在初始化AlertView时设定其notDisMiss值即可
NotDismissAlertView *updateAlert = [[NotDismissAlertView alloc] initWithTitle:@"新版本提示" message:[NSString stringWithFormat:@"更新日志:\n%@",changeLog] delegate:self cancelButtonTitle:@"前往下载" otherButtonTitles:nil, nil];
updateAlert.notDisMiss = YES;
[updateAlert show];
在 ios 8 后 出现了 uialertviewcontroller ,用同样的方法也可以达到让弹框不消失的目的
参考链接:
http://www.jianshu.com/p/932b81524787
https://www.jianshu.com/p/21f2dee72480
https://bbs.csdn.net/topics/390193528