• 【转】 UIALertView的基本用法与UIAlertViewDelegate对对话框的事件处理方法


    原文网址:http://blog.csdn.net/enuola/article/details/7900346

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

    具体代码如下:

    ViewController.h中的代码如下:

     

    [cpp] view plain copy
     
    1. #import <UIKit/UIKit.h>  
    2.   
    3. @interface ViewController : UIViewController<UIAlertViewDelegate>  
    4.   
    5. @end  



    ViewController.m中的详细代码:

    [java] view plain copy
     
      1. - (void)viewDidLoad  
      2. {  
      3.     [super viewDidLoad];  
      4.     // Do any additional setup after loading the view from its nib  
      5.       
      6.     //初始化AlertView  
      7.     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"AlertViewTest"  
      8.                                                    message:@"message"  
      9.                                                   delegate:self  
      10.                                          cancelButtonTitle:@"Cancel"  
      11.                                          otherButtonTitles:@"OtherBtn",nil];  
      12.     //设置标题与信息,通常在使用frame初始化AlertView时使用  
      13.     alert.title = @"AlertViewTitle";  
      14.     alert.message = @"AlertViewMessage";  
      15.       
      16.     //这个属性继承自UIView,当一个视图中有多个AlertView时,可以用这个属性来区分  
      17.     alert.tag = 0;  
      18.     //只读属性,看AlertView是否可见  
      19.     NSLog(@"%d",alert.visible);  
      20.     //通过给定标题添加按钮  
      21.     [alert addButtonWithTitle:@"addButton"];  
      22.     //按钮总数  
      23.     NSLog(@"number Of Buttons :%d",alert.numberOfButtons);  
      24.     //获取指定索引的按钮标题  
      25.     NSLog(@"buttonTitleAtIndex1:%@",[alert buttonTitleAtIndex:1]);  
      26.     NSLog(@"buttonTitleAtIndex2:%@",[alert buttonTitleAtIndex:2]);  
      27.     //获取取消按钮的索引  
      28.     NSLog(@"cancelButtonIndex:%d",alert.cancelButtonIndex);  
      29.     //获取第一个其他按钮的索引  
      30.     NSLog(@"firstOtherButtonIndex:%d",alert.firstOtherButtonIndex);  
      31.     //显示AlertView  
      32.     [alert show];  
      33.     [alert release];  
      34. }  
      35.   
      36. #pragma marks -- UIAlertViewDelegate --  
      37. //根据被点击按钮的索引处理点击事件  
      38. -(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex  
      39. {  
      40.     NSLog(@"clickButtonAtIndex:%d",buttonIndex);  
      41. }  
      42.   
      43. //AlertView已经消失时执行的事件  
      44. -(void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex  
      45. {  
      46.     NSLog(@"didDismissWithButtonIndex");  
      47. }  
      48.   
      49. //ALertView即将消失时的事件  
      50. -(void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex  
      51. {  
      52.     NSLog(@"willDismissWithButtonIndex");  
      53. }  
      54.   
      55. //AlertView的取消按钮的事件  
      56. -(void)alertViewCancel:(UIAlertView *)alertView  
      57. {  
      58.     NSLog(@"alertViewCancel");  
      59. }  
      60.   
      61. //AlertView已经显示时的事件  
      62. -(void)didPresentAlertView:(UIAlertView *)alertView  
      63. {  
      64.     NSLog(@"didPresentAlertView");  
      65. }  
      66.   
      67. //AlertView即将显示时  
      68. -(void)willPresentAlertView:(UIAlertView *)alertView  
      69. {  
      70.     NSLog(@"willPresentAlertView");  
      71. }  
      72.   
      73. - (void)viewDidUnload  
      74. {  
      75.     [super viewDidUnload];  
      76.     // Release any retained subviews of the main view.  
      77.     // e.g. self.myOutlet = nil;  
      78. }  
  • 相关阅读:
    [Linux] Nginx服务下统计网站的QPS
    [Go] go等待读取最后一行的数据内容
    [Go] Golang中的面向对象
    [Linux] 常见的并发模型
    [PHP] pmap可以查看进程占用内存的详细情况
    [PHP] 解决php中上传大文件的错误
    [PHP] 循环查看php-fpm的内存占用情况
    [Go] go中的goto语句跳到指定标签
    Java抽象类(Abstract Class)与接口(Interface)区别
    Java访问级别修饰符
  • 原文地址:https://www.cnblogs.com/wi100sh/p/5600808.html
Copyright © 2020-2023  润新知