最近在学习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. VC++ UTF-8与GBK格式转换

    // 注释:多字节包括GBK和UTF-8 int GBK2UTF8(char *szGbk,char *szUtf8,int Len) { // 先将多字节GBK(CP_ACP或ANSI)转换成宽字符 ...

  2. 剑指Offer43 n个骰子点数概率

    /************************************************************************* > File Name: 43_Dics.c ...

  3. JS each 跳出

    break 对应的是 return false continue 对应的是 return true 这个问题每次都会记不清,都要去查一遍百度再确定答案,在这里也记一遍好了. function getP ...

  4. sql时间格式

    取值后格式化 {:d}小型:如2005 {:D}大型:如2005年5月6日 {:f}完整型 当前时间获取 DateTime.Now.ToShortDateString 取值中格式化 SQL Serve ...

  5. Ubuntu 16.04 Vysor 破解 和黑屏问题解决+ 闪屏问题解决

    最新破解更新说明: 参考本人blog: 点我呀 黑屏解决 Vysor使用和黑屏问题 经过了一段时间的艰辛探索,确定是我chrome的PNaCl没有安装,然后又是一段艰辛的Google之后,终于在一个链 ...

  6. SQL Server 添加登录账户配置权限

    一.新建登录名 1. 在登录名右侧的文本框中输入新建的管理员账号名称:2. 一对单选按钮组中,选择Sql Server 身份验证,并输入登录密码:3. 勾选强制实施密码策略复选框:(密码策略一般是指加 ...

  7. iOS中-Qutarz2D详解及使用

    在iOS中Qutarz2D 详解及使用 (一)初识 介绍 Quartz 2D是二维绘图引擎. 能完成的工作有: 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成 ...

  8. 兼容IE,chrome 等所有浏览器 回到顶部代码

    今天在博客园看到一片帖子回到顶部代码,索性就看了下,但是发现在非IE浏览器下可以运行,在IE浏览器下却运行不了. 故将其代码搬弄过来做了些许修改后,完美支持了IE下的运行. 主要实现功能代码文件: & ...

  9. 20150511---Timer计时器(备忘)

    private void timer1_Tick(object sender, EventArgs e) { TimeSpan ts = , , ); string str = ts.Hours + ...

  10. gulp基础使用总结

    gulp 安装 1 检测电脑有没有安装node 执行 $ node -v $ npm -v 如果没有安装的话,可以到https://nodejs.org/en/download/下载安装. 2 全局安 ...