码迷,mamicode.com
首页 > 移动开发 > 详细

iOS中的UIAlertContrller

时间:2015-09-18 18:26:34      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

#import "RootViewController.h"

@interface RootViewController ()

@end

@implementation RootViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    
    //************************只是为了创建一个点击事件,用来触发能用UIAlertController处理的事件*****************
    //创建一个分段控件
    UISegmentedControl *segment = [[UISegmentedControl alloc] initWithItems:@[@"放弃",@"菜单"]];
    
    segment.tintColor = [UIColor orangeColor];
    segment.frame = CGRectMake(60, 100, 200, 40);
    [segment addTarget:self action:@selector(handle:) forControlEvents:UIControlEventValueChanged];
    
    [self.view addSubview:segment];
    
    [segment release];
    
}

//*******************处理点击事件 (用 UIAlertControl (ios 8 之后才能用???? ) 处理)-------所讲重点;

/**
 *  下面的是我所分享的这个空间,别看代码长,其实 case0 和 case1 是 里面几乎一样的代码,一个是为了处理警告框(UIAertView),另一个是处理操作表(UIActionSheet).其实 只是对UIAlertControl的初始化换了个类型而已,大家不要怕代码长;
 都是重复的,功能挺强大的;大家认真看看????????
 *
 *(重点是 里面的Block 块,这里我只是打了个NSLog,大家下去自己多总结????????)
 */
- (void)handle:(UISegmentedControl *)sender{
    
    switch (sender.selectedSegmentIndex) {
            // 下面实现 用 UIAlertController处理 UIAlertView的功能:
            
        case 0:{
            //1 .创建对象
    UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"提示" message:@"确定要退出么?" preferredStyle: UIAlertControllerStyleAlert];
            //2. 创建 触发项
            //创建触发项时注意它的类型(Style) 是三个枚举值,有不同的作用!!
            UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^void(UIAlertAction *action){NSLog(@"什么都不操作????");}];
            //创建 第二个触发项 (还可以继续创建,这里只用两个)
            UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"确定" style:  UIAlertActionStyleDestructive handler:^void(UIAlertAction *action){NSLog(@"您执行了您的操作??");
            }];
            
            //3.添加触发项 (把刚才创建的触发项添加到这个UIAlertController的对象(alertVC)上)????
            
            [alertVC addAction:cancelAction];
            [alertVC addAction:okAction];
            
            //4.添加 输入框 实现用户账户的输入
            [alertVC addTextFieldWithConfigurationHandler:^(UITextField *textField) {
                textField.placeholder = @"用户名";
                
            }];
            ////添加 输入框 实现用户密码的输入
            [alertVC addTextFieldWithConfigurationHandler:^(UITextField *textField) {
                textField.placeholder = @"密码";
                textField.secureTextEntry = YES;
            }];
            
            
            //5.模态 alertVC 控制器 到模态窗口进行显示????????
            [self presentViewController:alertVC animated:YES completion:nil];
            
        }
            break;
            
       // 下面实现 用 UIAlertController处理 UIActionSheet的功能
        case 1:
        {
            //1 .创建对象
            UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"提示" message:@"确定要退出么?" preferredStyle: UIAlertControllerStyleActionSheet];
            //2. 创建 触发项
            UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^void(UIAlertAction *action){NSLog(@"什么都不操作????");}];
            
            UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"确定" style:  UIAlertActionStyleDestructive handler:^void(UIAlertAction *action){NSLog(@"您执行了您的操作??");
            }];
            
            //3.添加触发项
            
            [alertVC addAction:cancelAction];
            [alertVC addAction:okAction];
            
           //4.模态 alertVC 控制器 到模态窗口进行显示????????
            [self presentViewController:alertVC animated:YES completion:nil];
            
        //    注意:    // 这个只有 四 步 哦! 比UiAlertView少了个 添加 输入框的功能,因为貌似 操作表没有添加输入框的功能!????????!
            
        }

            break;
        default:
            break;
    }
    
}

//到这里 UIAlertController 的一个初始化方法 和 一个添加操作项的方法 以及一个为 警告框 添加文本框的方法都在上面的代码里了!这个控制器内容虽然不多,但可以实现的功能是很强大的,因为里面涉及了Block 块!所以 还是请大家自己去好好看看为好!这里就不多说了!????

//    另外 UIAlertController 里面还有五个小的属性,其中三个是只读的,大家可以去头文件 或者 API里查看,这里就不介绍了! 大家再见啊!作??????????







@end

 

iOS中的UIAlertContrller

标签:

原文地址:http://www.cnblogs.com/wohaoxue/p/4819888.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!