zoukankan      html  css  js  c++  java
  • UIAlertView+Blocks.h

    #import <Foundation/Foundation.h>
    
    typedef void (^DismissBlock)(int buttonIndex);
    typedef void (^CancelBlock)();
    
    @interface UIAlertView (Blocks) <UIAlertViewDelegate> 
    
    + (UIAlertView*) showAlertViewWithTitle:(NSString*) title                    
                                    message:(NSString*) message 
                          cancelButtonTitle:(NSString*) cancelButtonTitle
                          otherButtonTitles:(NSArray*) otherButtons
                                  onDismiss:(DismissBlock) dismissed                   
                                   onCancel:(CancelBlock) cancelled;
    
    @end
    //
    //  UIAlertView+Blocks.m
    //  UIKitCategoryAdditions
    //
    
    #import "UIAlertView+Blocks.h"
    
    static DismissBlock _dismissBlock;
    static CancelBlock _cancelBlock;
    
    @implementation UIAlertView (Blocks)
    
    + (UIAlertView*) showAlertViewWithTitle:(NSString*) title                    
                                    message:(NSString*) message 
                          cancelButtonTitle:(NSString*) cancelButtonTitle
                          otherButtonTitles:(NSArray*) otherButtons
                                  onDismiss:(DismissBlock) dismissed                   
                                   onCancel:(CancelBlock) cancelled {
      
      _cancelBlock  = [cancelled copy];
      
      _dismissBlock  = [dismissed copy];
      
      UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title
                                                      message:message
                                                     delegate:[self self]
                                            cancelButtonTitle:cancelButtonTitle
                                            otherButtonTitles:nil];
      
      for(NSString *buttonTitle in otherButtons)
        [alert addButtonWithTitle:buttonTitle];
      
      [alert show];
      return alert;
    }
    
    + (void)alertView:(UIAlertView*) alertView didDismissWithButtonIndex:(NSInteger) buttonIndex {
      
        if(buttonIndex == [alertView cancelButtonIndex])
        {
            _cancelBlock();
        }
      else
      {
        _dismissBlock(buttonIndex - 1); // cancel button is button 0
      }  
    }
    
    
    @end
     
  • 相关阅读:
    python中自定义模块导入
    EditText------Android
    Fragment类实现
    Android文件访问
    python中pip使用国内镜像提高安装速度
    esri/geometry包 (arcgis api for js)
    【CSDN 编辑器 MarkDowm 使用技巧】
    for 循环 :从指定下标开始,并指定步长
    【车牌识别】-车牌中字符分割代码详解
    【 Linux 常用命令】
  • 原文地址:https://www.cnblogs.com/hxwj/p/4796270.html
Copyright © 2011-2022 走看看