• 由UIAlertController封装的工具类


    由于苹果弃用了之前的AlertView,取而代之的是UIAlertController,但UIAlertController写起来代码量却增多了,加之项目中用到提示的地方很多,写起来很麻烦,于是,封装了一个UIAlertController的工具。

    #import <Foundation/Foundation.h>
    
    @interface AlertControllerTool : NSObject
    
    //没有取消按钮(确认后无跳转)
    +(UIAlertController *)alertMesasge:(NSString *)message  confirmHandler:(void(^)(UIAlertAction *))confirmActionHandle viewController:(UIViewController *)vc;
    
    //没有取消按钮(确认后有跳转)
    +(UIAlertController *)alertTitle:(NSString *)title mesasge:(NSString *)message preferredStyle:(UIAlertControllerStyle *)preferredStyle  confirmHandler:(void(^)(UIAlertAction *))confirmActionHandler viewController:(UIViewController *)vc;
    
    //有取消按钮的
    +(UIAlertController *)alertTitle:(NSString *)title mesasge:(NSString *)message preferredStyle:(UIAlertControllerStyle *)preferredStyle  confirmHandler:(void(^)(UIAlertAction *))confirmHandler cancleHandler:(void(^)(UIAlertAction *))cancleHandler viewController:(UIViewController *)vc;
    
    @end

    方法的实现

    //没有取消按钮的
    +(UIAlertController *)alertMesasge:(NSString *)message  confirmHandler:(void(^)(UIAlertAction *))confirmActionHandle viewController:(UIViewController *)vc
    {
    
         UIAlertController *alertController=[UIAlertController alertControllerWithTitle:@"温馨提示" message:message preferredStyle:UIAlertControllerStyleAlert];
        
        UIAlertAction *confirmAction=[UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:confirmActionHandle];
        
        [alertController addAction:confirmAction];
        
        [vc presentViewController:alertController animated:YES completion:nil];
        
        return alertController;
        
    }
    
    //没有取消按钮(确认后有跳转)
    +(UIAlertController *)alertTitle:(NSString *)title mesasge:(NSString *)message preferredStyle:(UIAlertControllerStyle *)preferredStyle  confirmHandler:(void(^)(UIAlertAction *))confirmActionHandler viewController:(UIViewController *)vc
    {
    
        UIAlertController *alertController=[UIAlertController alertControllerWithTitle:title message:message preferredStyle:*preferredStyle];
        
        UIAlertAction *confirmAction=[UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:confirmActionHandler];
        
        [alertController addAction:confirmAction];
        
        [vc presentViewController:alertController animated:YES completion:nil];
        
        return alertController;
    
    }
    
    
    //有取消按钮的
    +(UIAlertController *)alertTitle:(NSString *)title mesasge:(NSString *)message preferredStyle:(UIAlertControllerStyle *)preferredStyle  confirmHandler:(void(^)(UIAlertAction *))confirmHandler cancleHandler:(void(^)(UIAlertAction *))cancleHandler viewController:(UIViewController *)vc
    {
    
        UIAlertController *alertController=[UIAlertController alertControllerWithTitle:title message:message preferredStyle:*preferredStyle];
         
        UIAlertAction *confirmAction=[UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:confirmHandler];
        
        UIAlertAction *cancleAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:cancleHandler];
        
        [alertController addAction:confirmAction];
        [alertController addAction:cancleAction];
        
        [vc presentViewController:alertController animated:YES completion:nil];
        
        return alertController;
    
    }

    工具的使用

    [AlertControllerTool alertMesasge:@"密码不一致,请重新输入" confirmHandler:nil viewController:self];
    一个人,一片天,一条路,一瞬间!
  • 相关阅读:
    数据库备份与还原
    启明星产品与微软Active Directory活动目录集成说明
    启明星请假系统里,计算工作日的实现
    启明星会议室预定系统Outlook版开始支持Exchange2013与Office365版
    Jquery Mobile实例--利用优酷JSON接口读取视频数据
    高性能且线程安全的两种格式化日期方式
    将数列唯一值化后再求中值的效率比较 第一方案胜出,加索引后在近两百万数据中查出中值耗时0.176秒
    Oracle WITH 语句 语法
    新三种求数列中值SQL之效率再比拼
    rank,dense_rank和row_number函数区别
  • 原文地址:https://www.cnblogs.com/zcl410/p/5082500.html
Copyright © 2020-2023  润新知