YWAlertView
提示弹出框、选择弹出框、日期选择器、地址选择器、高效调用、高效扩展
- 最新更新记录
v1.3.0 YWAlertView中的YWAlertViewStyleActionSheet模式支持懒加载,支持动态修改title和message,高度自动变化
v1.2.2 YWAlertView中的YWAlertViewStyleAlert模式支持懒加载,支持动态修改title和message,高度自动变化
v1.2.1 新增地址选择器
v1.0.0 新增日历选择器以及时间格式化以及时间戳相关工具类
v0.1.0 新增弹框提示和弹框选择器
兼容性
- iPhone和iPad
- 横屏和竖屏
- iOS 7以上
集成方法
- 将YWAlertView文件拖入项目,引入头文件
#import "YWAlertView.h"
- 使用cocopod
pod 'YWAlertView'
介绍
YWAlertView目前提供五种模式:
> YWAlertViewStyleAlert
> YWAlertViewStyleActionSheet
> YWAlertViewStyleDatePicker ////datePicker默认在中间显示
> YWAlertViewStyleDatePicker2 //datePicker底部显示
> YWAlertViewStyleAddressPicker
- 注意点:YWAlertView并不是view,可以比作是一个简单的工厂,通过它管理规格去生成不同的控件,因为这样后期将陆续加入其它的控件,日历,地址等
* YWAlertViewStyleAlert 的模式
* YWAlertViewStyleActionSheet 的模式
* YWAlertViewStyleDatePicker 的模式
* YWAlertViewStyleAddressPicker 的模式
使用
- delegate回调
id <YWAlertViewProtocol>alert = [YWAlertView alertViewWithTitle:@"温馨提示" message:@"Do any additional setup after loading the view" delegate:self preferredStyle:YWAlertViewStyleAlert footStyle:YWAlertPublicFootStyleDefalut bodyStyle:YWAlertPublicBodyStyleDefalut cancelButtonTitle:@"cancel" otherButtonTitles:@[@"Ok"]];
[alert show];
- block回调
id <YWAlertViewProtocol>alert = [YWAlertView alertViewWithTitle:@"温馨提示" message:@"Do any additional setup after loading the view,typically from a nib" preferredStyle:YWAlertViewStyleAlert footStyle:YWAlertPublicFootStyleDefalut bodyStyle:YWAlertPublicBodyStyleDefalut cancelButtonTitle:nil otherButtonTitles:nil handler:^(NSInteger buttonIndex, id _Nullable value) {
NSLog(@"block=当前点击--%zi",buttonIndex);
}];
[alert setMessageFontWithName:@"Bodoni Ornaments" size:15];
[alert show];
- 全局配置基本参数
创建一个继承NSObject的实体类,并且准守协议,实现其基本的参数配置方法,在显示alert的时候使用该实体类的对象,如:
id <YWAlertViewProtocol>alert = [YWAlertView alertViewWithTitle:@"温馨提示" message:@"主题配置颜色以及背景图" delegate:self preferredStyle:YWAlertViewStyleAlert footStyle:YWAlertPublicFootStyleDefalut bodyStyle:YWAlertPublicBodyStyleDefalut cancelButtonTitle:@"cancel" otherButtonTitles:@[@"Ok"]];
[alert setTheme:[YWTheme new]];
[alert showOnViewController];
该继承NSObject的实体类的m文件内容如下,按需实现相应的方法
@implementation YWTheme
- (UIColor *)alertCancelColor{
return [UIColor redColor];
}
- (UIImage *)alertBackgroundView{
return [UIImage imageNamed:@"105459445"];
}
- (CGFloat)alterBackgroundViewArticulation{
return 0.5;
}
- (NSString *)alertMessageFontWithName{
return @"AmericanTypewriter";
}
- (NSString *)alertTitleFontWithName{
return @"Baskerville-SemiBoldItalic";
}
@end
- 懒加载
- (id<YWAlertViewProtocol>)ywAlert{
if (!_ywAlert) {
_ywAlert = [YWAlertView alertViewWithTitle:nil message:@"懒加载模式,我要重置message的信息,高度也要进行相关的变化哦" delegate:self preferredStyle:YWAlertViewStyleAlert footStyle:YWAlertPublicFootStyleDefalut bodyStyle:YWAlertPublicBodyStyleDefalut cancelButtonTitle:@"cancel" otherButtonTitles:@[@"Ok"]];
}
return _ywAlert;
}
- (void)alert_defalut_lazing{
//强转协议,调用私有方法 message 和title均支持修改
[(id<YWAlertAlertViewProtocol>)self.ywAlert resetAlertMessage:@"懒加载模式,我要重置message的信息,高度也要进行相关的变化哦"];
[(id<YWAlertAlertViewProtocol>)self.ywAlert resetAlertTitle:@"使用第一行的对象alter"];
[self.ywAlert show];
}
```