zoukankan      html  css  js  c++  java
  • IOS UIAlertView 和 UIActionSheet的区别

    UIAlertView 和 UIActionSheet的区别:

    1.弹框位置不同

    UIAlertView弹框显示在中间

    UIActionSheet弹框显示在底端

    2.是否可以实现文本框的输入(参考:http://www.ithao123.cn/content-9409772.html)

    UIAlertView可以实现,而UIActionSheet不可以实现。

    3.是否可以实现点击按钮事件

    UIAlertView,UIActionSheet都可以实现

    用他们的delegate事件处理点击事件

    1. UIAlertViewDelegate

    #pragma mark UIAlertViewDelegate methods

    - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex

    2). UIActionSheetDelegate

    #pragma mark UIActionSheetDelegate methods

    - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex

    #import "RootViewController.h"
    
    @interface RootViewController ()
    
    @end
    
    @implementation RootViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        // 创建一个BUTTON 点击显示弹框
        UIButton *button = [UIButton buttonWithType:(UIButtonTypeCustom)];
        button.frame = CGRectMake(100, 100, 100, 100);
        // 给BUTTON 添加点击方法
        [button addTarget:self action:@selector(actionButton:) forControlEvents:(UIControlEventTouchUpInside)];
        button.backgroundColor = [UIColor blueColor];
        [self.view addSubview:button];
    }
    // button的点击方法
    - (void)actionButton:(UIButton *)button
    {
        // 初始化一个一个UIAlertController
        // 参数preferredStyle:是IAlertController的样式
        // UIAlertControllerStyleAlert 创建出来相当于UIAlertView
        // UIAlertControllerStyleActionSheet 创建出来相当于 UIActionSheet
        UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"提示" message:@"静" preferredStyle:(UIAlertControllerStyleAlert)];
    
        // 创建按钮
        UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"确定" style:(UIAlertActionStyleDefault) handler:^(UIAlertAction *action) {
            NSLog(@"注意学习");
        }];
        // 创建按钮
        // 注意取消按钮只能添加一个
        UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:(UIAlertActionStyleCancel) handler:^(UIAlertAction *action) {
        // 点击按钮后的方法直接在这里面写
            NSLog(@"注意学习");
        }];
    
    //    // 创建警告按钮
    //    UIAlertAction *structlAction = [UIAlertAction actionWithTitle:@"警告" style:(UIAlertActionStyleDestructive) handler:^(UIAlertAction *action) {
    //        NSLog(@"注意学习");
    //    }];
    //
        // 添加按钮 将按钮添加到UIAlertController对象上
        [alertController addAction:okAction];
        [alertController addAction:cancelAction];
        //[alertController addAction:structlAction];
    
        // 只有在alert情况下才可以添加文本框
        [alertController addTextFieldWithConfigurationHandler:^(UITextField *textField) {
            textField.placeholder = @"用户名";
            textField.secureTextEntry = YES;
        }];
    
    //    // 取出文本
    //    UITextField *text = alertController.textFields.firstObject;
    //    UIAlertAction *action = alertController.actions.firstObject;
    
        // 将UIAlertController模态出来 相当于UIAlertView show 的方法
        [self presentViewController:alertController animated:YES completion:nil];
    }

    这里写图片描述

     


  • 相关阅读:
    babel
    >/dev/null
    write to file
    fortran 77 example
    mix c with fortran
    automake
    Rockie's Android Porting Guide(4)——Add SD card to your system
    android平台初步分析
    Rockie's Android Porting Guide(4)——Add SD card to your system
    Android(1.5) 开机图片/文字/动画 修改
  • 原文地址:https://www.cnblogs.com/yuyu-2012/p/5129724.html
Copyright © 2011-2022 走看看