最近在学习ios开发,学习的书籍《ios7 Pragramming cookbook》,做笔记的目的以后方便查看。笔记形式是小例子,将书上的例子书写完整。

UIAlertViewClass 的使用场景

  1,向用户以一个警告的形式显示信息。

   2,让用户确认一些动作

   3,让用户输入用户名和密码

   4,让用户输入一些文本,这些文本在程序被使用

例1   实现简单显示一些警告信息

新建一个 Single View Application 简单工程,工程名字维AlterView,扩展前缀CB

 

代码如下:

#import "CBViewController.h"

@interface CBViewController ()
@end @implementation CBViewController - (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIAlertView *alterView = [[UIAlertView alloc]
initWithTitle:@"学些MAC/IOS开发"
message:@"一个UIAlterView的例子"
delegate:self
cancelButtonTitle:@"取消"
otherButtonTitles:@"确定", nil];
[alterView show] ;
} - (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} @end

运行结果示意图

例2  让用户输入账号和密码 ,log输出账号和密码

要获得用户点击的是那个按钮可以在 代码实现 UIAlertViewDelegate 代理中下面的方法

// Called when a button is clicked. The view will be automatically dismissed after this call returns

// 用于点击按钮是被调用,返回被调用button的索引

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

#import "CBViewController.h"

@interface CBViewController ()<UIAlertViewDelegate> //添加代理

@end

@implementation CBViewController

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib. UIAlertView *alterView = [[UIAlertView alloc]
initWithTitle:@"学些MAC/IOS开发"
message:@"请输入你的账号和密码"
delegate:self
cancelButtonTitle:@"取消"
otherButtonTitles:@"确定", nil];
[alterView setAlertViewStyle:UIAlertViewStyleLoginAndPasswordInput] ; UITextField *user = [alterView textFieldAtIndex: ] ;
user.keyboardType = UIKeyboardTypeAlphabet ; //设置弹出的键盘样式 UITextField *pass = [alterView textFieldAtIndex:] ;
pass.keyboardType = UIKeyboardTypeDefault ; [alterView show] ;
}

////实现代理协议的方法
//// 用于点击按钮是被调用,返回被调用button的索引
- (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
//通过返回button索引 得到点击按钮的现实字符串
NSString *buttonName = [alertView buttonTitleAtIndex:buttonIndex];
if ([buttonName isEqualToString:@"确定" ]) {
UITextField *user = [alertView textFieldAtIndex:] ;
UITextField *pass = [alertView textFieldAtIndex:] ;
NSLog(@"确定 账号=%@ 密码=%@", user.text, pass.text) ;
}
else if ([buttonName isEqualToString:@"取消"])
{
NSLog(@"取消");
}
} - (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} @end

输出结果

2014-07-09 15:27:05.980 AlertView[8406:60b] 确定账号=goipc 密码=123456

2014-07-09 15:39:31.938 AlertView[8429:60b] 取消

运行的效果图

ios/mac/COCOA系列 -- UIALertVIew 学习笔记的更多相关文章

  1. java8 学习系列--NIO学习笔记

    近期有点时间,决定学习下java8相关的内容: 当然了不止java8中新增的功能点,整个JDK都需要自己研究的,不过这是个漫长的过程吧,以自己的惰性来看: 不过开发中不是有时候讲究模块化开发么,那么我 ...

  2. contiki-main.c 中的process系列函数学习笔记 <contiki学习笔记之六>

    说明:本文依然依赖于 contiki/platform/native/contiki-main.c 文件. ---------------------------------------------- ...

  3. 【iOS】我的Objective-C学习笔记

    1.代码中增加标记 #pragma mark - #pragma mark 2.点语法 Person *p = [Person new]; // 点语法的本质还是方法调用 p.age = 10; // ...

  4. 《慕客网:IOS-动画入门》学习笔记

    新建Cocoa Touch Class,语言是swift 然后继续为界面添加一个普通的View Controller,并且添加前面视图的静态table的转向剪头指向这个View Controller, ...

  5. iOS多线程之GCD学习笔记

    什么是GCD 1.全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 2.纯C语言,提供了非常多强大的函数 GCD的优势 GCD是苹果公司为多核的并行运算提出的解决方案 G ...

  6. 干货 | Python进阶系列之学习笔记(二)

    目录 对象 字符串 一.对象 (1)什么是对象 在python中一切都是对象,每个对象都有三个属性分别是,(id)身份,就是在内存中的地址,类型(type),是int.字符.字典(dic).列表(li ...

  7. ios 控件代码transform学习笔记

    1.图片设置(平移,缩放,旋转) 创建一个transform属性 //按钮点击时,只能执行一次向上旋转 //派 M_PI_4 45度旋转 . CGAffineTransform transforms= ...

  8. Cocoa Foundation框架学习笔记 - NSCalendar

    + (void)beginTest { /* FOUNDATION_EXPORT NSString * const NSGregorianCalendar; //公历(常用) FOUNDATION_E ...

  9. smartcar 系列机器人学习笔记1

    总体框架: 1,感知一个相机,一个雷达,一个odom(非必须:一个imu)功能:车道线检测,红绿灯检测,障碍物检测 2,决策规划 功能:一次规划,(避障即:二次规划) 3,控制执行 功能:速度控制,角 ...

随机推荐

  1. html+css--水平居中总结-不定宽块状元素方法(三)

    来源:http://www.imooc.com/code/6365 除了前两节讲到的插入table标签,以及改变元素的display类型,可以使不定宽块状元素水平居中之外,本节介绍第3种实现这种效果的 ...

  2. Javascript addEventListener dispatchEvent

    测试代码:分别在嵌套的元素body,div#level1,div#level2,div#level3上附加事件,仅在chrome中测试通过. <!DOCTYPE html> <htm ...

  3. Part 93 Protecting shared resources from concurrent access in multithreading

  4. 关于自定义tabBar时修改系统自带tabBarItem属性造成的按钮顺序错乱的问题相关探究

      关于自定义tabBar时修改系统自带tabBarItem属性造成的按钮顺序错乱的问题相关探究 测试代码:http://git.oschina.net/Xiyue/TabBarItem_TEST 简 ...

  5. HTML+CSS学习笔记 (13) - CSS代码缩写,占用更少的带宽

    标签:HTML+CSS 盒模型代码简写 还记得在讲盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左.具体应用在m ...

  6. 深刻理解C#中资源释放

    今天我的一个朋友看到我写的那篇<C#中用AJAX验证用户登录>时,给我指出了点小毛病.就是在用户登录时,如果用户登录失败,在下面这段代码中,都会new出来一个User对象,如果连续登录失败 ...

  7. UI3_视图切换

    // // ViewController.m // UI3_视图切换 // // Created by zhangxueming on 15/7/3. // Copyright (c) 2015年 z ...

  8. 7款纯CSS3实现的炫酷动画应用

    1.纯CSS3实现人物摇头动画 这次我们要来分享一款超级可爱的纯CSS3人物摇头动画,初始化的时候人物的各个部位是利用CSS3动画效果拼接而成,接下来就是人物听音乐的场景,一边听音乐一边摇着脑袋,十分 ...

  9. js中字符和数组一些基本算法题

    最近在刷 fcc的题,跟升级打怪一样,一关一关的过,还挺吸引我的.今天抽时间把 Basic Algorithm Scritping  这部分题做了,根据一些提示,还是比较简单的.有些题的处理方式 方法 ...

  10. 数据挖掘:实用机器学习技术P295页:

    数据挖掘:实用机器学习技术P295页: 在weka软件中的实验者界面中,新建好实验项目后,添加相应的实验数据,然后添加对应需要的分类算法 ,需要使用多个算法时候重复操作添加add algorithm. ...