iOS-基础控件--警示框
2016-05-23 本文已影响533人
云之君兮鹏
曲儿小,腔儿大,官船来往乱如麻!<猫头夜鹰>
方式1效果
我姑且把警示框称作基础控件吧,应该算作视图控制器吧
实现方法代码:
// 声明一个button 目的是点击这个按钮 弹出警告框
@property(nonatomic,strong)UIButton * button;
// 在 viewDidLoad方法里面button进行相关的设置
- (void)viewDidLoad {
[super viewDidLoad];
// 创建 button 进行布局
self.button = [[UIButton alloc] initWithFrame:CGRectMake(0, 100, 100, 20)];
[self.button setTitle:@"跳转" forState:UIControlStateNormal]
self.button.backgroundColor = [UIColor blueColor];
[self.view addSubview:self.button];
// 设置按钮点击事件:
[self.button addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
}
在button点击事件里面进行警示框的创建弹出
方式1:
-(void)buttonAction:( UIButton * )sender
{
// 创建初始化警告框
// 参数1:标题(NSString *类型)
// 参数2:信息(NSString *类型)
// 参数3:警示框类型( UIAlertControllerStyle )
UIAlertController *alert = [UIAlertController
alertControllerWithTitle: @"警示框"
message: @"我被点击了我是警示框"
preferredStyle:UIAlertControllerStyleAlert];
// 给警示框添加按钮 参数1:标题 参数2:风格 block块点击后的操作放在里面
[alert addAction:[UIAlertAction
actionWithTitle:@"确定"
style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action)
{
NSLog(@"点击确定之后的操作可以选择在这里进行");
} ] ];
//弹出提示框 这是模态出来的
[self presentViewController:alert
animated:YES completion:nil];
}
效果展示:
方式1效果
方式2:
-(void)buttonAction:( UIButton * )sender
{
// 与方式1相同
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"警示框" message:@"我就是警示框"
preferredStyle:UIAlertControllerStyleActionSheet];
//UIAlertControllerStyleActionSheet:显示在屏幕底部
//创建设置按钮
// 参数1:标题
// 参数2:风格
// 参数3:处理者(可以把操作方法写在这个block中点击这个按钮后进行相应的操作)
UIAlertAction *action = [UIAlertAction
actionWithTitle:@"确定"
style:UIAlertActionStyleDefault handler:nil];
UIAlertAction *action1 = [UIAlertAction
actionWithTitle:@"取消" style:UIAlertActionStyleCancel
handler:nil];
[alert addAction:action]; // 添加按钮到警示框上面
[alert addAction:action1];
// 模态出警示框
[self presentViewController:alert
animated:YES completion:nil];
}
方式2展示
方式3:(现在已经弃用了)
// 警告框 创建
UIAlertView *alert = [[UIAlertView
alloc]initWithTitle:@"警示框" message:@"我被点击了我是警示框" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:@"取消",
nil];
// 展示警示框
[alert show];