响应UIAlertView的按钮点击动作
响应UIAlertView的按钮点击动作
Lambda8421 发表于3年前
响应UIAlertView的按钮点击动作
  • 发表于 3年前
  • 阅读 11
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: 转载
首先,视图控制器必须得实现协议UIAlertViewDelegate中的方法,并指定delegate为self,才能使弹出的Alert窗口响应点击事件。

具体代码如下:

ViewController.h中的代码如下:

    #import <UIKit/UIKit.h>  
      
    @interface ViewController : UIViewController<UIAlertViewDelegate>  
      
    @end  



ViewController.m中的详细代码:

    - (void)viewDidLoad  
    {  
        [super viewDidLoad];  
        // Do any additional setup after loading the view from its nib  
          
        //初始化AlertView  
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"AlertViewTest"  
                                                       message:@"message"  
                                                      delegate:self  
                                             cancelButtonTitle:@"Cancel"  
                                             otherButtonTitles:@"OtherBtn",nil];  
        //设置标题与信息,通常在使用frame初始化AlertView时使用  
        alert.title = @"AlertViewTitle";  
        alert.message = @"AlertViewMessage";  
          
        //这个属性继承自UIView,当一个视图中有多个AlertView时,可以用这个属性来区分  
        alert.tag = 0;  
        //只读属性,看AlertView是否可见  
        NSLog(@"%d",alert.visible);  
        //通过给定标题添加按钮  
        [alert addButtonWithTitle:@"addButton"];  
        //按钮总数  
        NSLog(@"number Of Buttons :%d",alert.numberOfButtons);  
        //获取指定索引的按钮标题  
        NSLog(@"buttonTitleAtIndex1:%@",[alert buttonTitleAtIndex:1]);  
        NSLog(@"buttonTitleAtIndex2:%@",[alert buttonTitleAtIndex:2]);  
        //获取取消按钮的索引  
        NSLog(@"cancelButtonIndex:%d",alert.cancelButtonIndex);  
        //获取第一个其他按钮的索引  
        NSLog(@"firstOtherButtonIndex:%d",alert.firstOtherButtonIndex);  
        //显示AlertView  
        [alert show];  
        [alert release];  
    }  
      
    #pragma marks -- UIAlertViewDelegate --  
    //根据被点击按钮的索引处理点击事件  
    -(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex  
    {  
        NSLog(@"clickButtonAtIndex:%d",buttonIndex);  
    }  
      
    //AlertView已经消失时执行的事件  
    -(void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex  
    {  
        NSLog(@"didDismissWithButtonIndex");  
    }  
      
    //ALertView即将消失时的事件  
    -(void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex  
    {  
        NSLog(@"willDismissWithButtonIndex");  
    }  
      
    //AlertView的取消按钮的事件  
    -(void)alertViewCancel:(UIAlertView *)alertView  
    {  
        NSLog(@"alertViewCancel");  
    }  
      
    //AlertView已经显示时的事件  
    -(void)didPresentAlertView:(UIAlertView *)alertView  
    {  
        NSLog(@"didPresentAlertView");  
    }  
      
    //AlertView即将显示时  
    -(void)willPresentAlertView:(UIAlertView *)alertView  
    {  
        NSLog(@"willPresentAlertView");  
    }  
      
    - (void)viewDidUnload  
    {  
        [super viewDidUnload];  
        // Release any retained subviews of the main view.  
        // e.g. self.myOutlet = nil;  
    }




共有 人打赏支持
粉丝 11
博文 120
码字总数 121640
×
Lambda8421
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: