1、UIAlertView(屏幕中央弹出框)(不需要服从代理)

UIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@"title" message:@"message" delegate:self cancelButtonTitle:@"cancel" otherButtonTitles:@"done", nil];

//设置alertView的样式

alertView.alertViewStyle = UIAlertViewStyleLoginAndPasswordInput;

//使alertView展示出来

[alertView show];

//延迟5秒执行dismissAlertView

[self performSelector:@selector(dismissAlertView:) withObject:alertView afterDelay:5];

// alertview消失的方法

-(void)dismissAlertView:(UIAlertView*)alert{

[alert dismissWithClickedButtonIndex:0 animated:YES];

}

//点击alertView button 触发的方法。

//buttonIndex按钮的索引值 cancel的index为0

//(代理方法)

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

//获取alertview上的输入文本

UITextField * textField1 = [alertView textFieldAtIndex:0];

NSLog(@"%@",textField1.text);

2、UIActionSheet(屏幕底端出现)

UIActionSheet * sheet = [[UIActionSheet alloc] initWithTitle:@"题目" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:@"确定" otherButtonTitles:@"可以", nil];

//destructiveButtonTitle 红色字体

//使sheet显示出来

[sheet showInView:self.view];

//延迟5秒执行dismissAlertView

[self performSelector:@selector(dismissActionSheet:) withObject:sheet afterDelay:5];

// sheet 消失的方法

[sheet dismissWithClickedButtonIndex:0 animated:YES];

//代理方法(index顺序从上到下)

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

switch (buttonIndex) {

case 0:

NSLog(@"确定");

break;

case 1:

NSLog(@"可以");

break;

case 2:

NSLog(@"取消");

break;

default:

break;

}

}

3、UIAlertController

//创建UIAlertController

UIAlertController * alertController = [UIAlertController alertControllerWithTitle:@"题目" message:@"消息" preferredStyle:UIAlertControllerStyleAlert];

//创建按钮

UIAlertAction * action1 = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction *  action) {

NSLog(@"no");

}];

UIAlertAction * action2 = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * action) {

NSLog(@"ok");

UITextField * field = alertController.textFields[0];

NSLog(@"%@",field.text);

}];

//添加文本

[alertController addTextFieldWithConfigurationHandler:^(UITextField * textField) {

textField.secureTextEntry = YES;

}];

[alertController addAction:action1];

[alertController addAction:action2];

//展示alertController

[self presentViewController:alertController animated:YES completion:nil];

iOS - 提示信息 - UIAlertView、UIActionSheet、UIAlertController的实际应用的更多相关文章

  1. iOS开发之UIAlertView与UIAlertController的详尽用法说明

    本文将从四个方面对IOS开发中UIAlertView与UIAlertController的用法进行讲解: 一.UIAlertView与UIAlertController是什么东东? 二.我们为什么要用 ...

  2. ios-消息弹框之UIAlertView, UIActionSheet以及UIAlertController小结

    首先storyboard中创建对应按钮并拖线,来演示不同的效果 首先点击了actionSheet按钮效果如图 实现弹框需要遵守设置代理,遵守协议. 效果就是从底部向上弹起来的框框. 通过对按钮的点击输 ...

  3. 在iOS 8中使用UIAlertController

    iOS 8的新特性之一就是让接口更有适应性.更灵活,因此许多视图控制器的实现方式发生了巨大的变化.全新的UIPresentationController在实现视图控制器间的过渡动画效果和自适应设备尺寸 ...

  4. 【iOS】swift-ObjectC 在iOS 8中使用UIAlertController

    iOS 8的新特性之一就是让接口更有适应性.更灵活,因此许多视图控制器的实现方式发生了巨大的变化.全新的UIPresentationController在实现视图控制器间的过渡动画效果和自适应设备尺寸 ...

  5. UIAlertView和UIAlertController

    UIAlertView 随着苹果上次iOS 5的发布,对话框视图样式出现在了我们面前,直到现在它都没有发生过很大的变化.下面的代码片段展示了如何初始化和显示一个带有“取消”和“好的”按钮的对话框视图. ...

  6. iOS改变UIAlertView、UIActionSheet、UIAlertController系统字体颜色

    废话不多说,直接上代码,效果是最好的说服力 1.改变UIAlertView字体颜色 [UIView appearance].tintColor = [UIColor greenColor]; 个人还是 ...

  7. iOS 9.0中UIAlertController的用法。

    1.我为什么要写这篇博客记录它? 答:因为 UIAlertView和UIActionSheet 被划线了 苹果不推荐我们使用这两个类了,也不再进行维护和更新,为了以后方便使用我来记录一下.如图所示 正 ...

  8. iOS 9.0中UIAlertController的用法

    UIAlertView和UIActionSheet 被划线了. 苹果不推荐我们使用这两个类了.也不再进行维护和更新 正如苹果所说它现在让我们用UIAlertConntroller 并设置样式为UIAl ...

  9. iOS学习之UIActionSheet的使用

    UIActionSheet是在iOS弹出的选择按钮项,可以添加多项,并为每项添加点击事件. 为了快速完成这例子,我们打开Xcode 4.3.2, 先建立一个single view applicatio ...

随机推荐

  1. class dict

    class dict(object): """ dict() -> new empty dictionary dict(mapping) -> new dic ...

  2. dbcp 是什么

    Many Apache projects support interaction with a relational database. Creating a new connection for e ...

  3. Unity3d:Unknown type 'System.Collections.Generic.CollectionDebuggerView'1

    问题描述:如图,在调试状态下说:Unknown type 'System.Collections.Generic.CollectionDebuggerView'1<ignore_js_op> ...

  4. easyui grid中翻页多选方法

    <table class="easyui-datagrid" title="人员选择" id="dg" data-options=&q ...

  5. preventDefault stopPropagation??

    棒棒哒~ event.preventDefault https://developer.mozilla.org/zh-CN/docs/Web/API/Event/preventDefault stop ...

  6. yum update Transaction Check Error

    update系统时,发现其中一台server居然提示: Transaction Check Error:file /usr/lib/perl5/5.8.8/CGI.pm from install of ...

  7. 71道经典Android面试题和答案

    ,,面试题1.        下列哪些语句关于内存回收的说明是正确的? (b ) A. 程序员必须创建一个线程来释放内存  B.内存回收程序负责释放无用内存   C.内存回收程序允许程序员直接释放内存 ...

  8. FLEX4中的Panel如何实现带自定义图标和按钮

      做过flex开发的程序员都知道,使用flex3中的panel自定义按钮很容易,而且flex3的panel有icon属性.但是flex4的中大部分的控件与flex3中的控件实现方式有很大的变化,同是 ...

  9. ST10 Bootstrap Loader

    Bootstrap Loader The built-in bootstrap loader (BSL) of the ST10F269 provides a mechanism to load th ...

  10. WOSA/XFS及SP综述

    转自  http://blog.csdn.net/andyhou/article/details/6888416 前言:         写给ATM硬件和软件人员的无言歌.         希望对工作 ...