zoukankan      html  css  js  c++  java
  • 由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];
    一个人,一片天,一条路,一瞬间!
  • 相关阅读:
    Spring笔记系列--1--基本内容与xml配置
    aop(面向切面编程)在Java中的两种动态代理实现
    linux配置网络,关闭防火墙命令操作
    Nginx知识记录
    发邮件工具类
    增强请求响应——代理模式
    取url中的参数值
    lumisoft会将eml后缀格式的附件给解析成文本,这里保存成文件
    lumisoft邮件头不规范造成内容无法读取
    lumisoft邮件内容中文乱码问题
  • 原文地址:https://www.cnblogs.com/zcl410/p/5082500.html
Copyright © 2011-2022 走看看