IOS开发:UIAlertView使用

2024-05-28 10:08
文章标签 使用 开发 ios uialertview

本文主要是介绍IOS开发:UIAlertView使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  UIAlertView是什么就不介绍了

1.基本用法


1 UIAlertView *view = [[UIAlertView alloc]initWithTitle:@"Test"    //标题
2                                               message:@"this is a alert view "   //显示内容
3                                              delegate:nil          //委托,可以点击事件进行处理
4                                     cancelButtonTitle:@"取消"
5                                     otherButtonTitles:@"确定"
6                                                     //,@"其他",    //添加其他按钮 
7                                  nil];
8 [view show];效果图:

 \

2.多个按钮  

取消上面代码@“其他”的注释后,运行效果如下

 

\

可以以此类推,添加多个

3.一些系统样式参数

UIAlertViewStyle这个枚举提供了几个样式

1 typedef NS_ENUM(NSInteger, UIAlertViewStyle) {
2     UIAlertViewStyleDefault = 0,            //缺省样式
3     UIAlertViewStyleSecureTextInput,         //密文输入框
4     UIAlertViewStylePlainTextInput,          //明文输入框
5     UIAlertViewStyleLoginAndPasswordInput      //登录用输入框,有明文用户名,和密文密码输入二个输入框
6 };

使用代码如下:


1     UIAlertView *view = [[UIAlertView alloc]initWithTitle:@"请等待"    //标题
2                                                   message:@"this is a alert view "   //显示内容
3                                                  delegate:nil                //委托,可以点击事件进行处理
4                                         cancelButtonTitle:@"取消"
5                                         otherButtonTitles:@"确定",
6                                                     //,@"其他",    //添加其他按钮
7                          nil];
8 [view setAlertViewStyle:UIAlertViewStyleLoginAndPasswordInput];   //控制样式效果图:

 

\

这是参数为:UIAlertViewStyleLoginAndPasswordInput  效果图,其他的自行查看

不过这几个类型,我个人觉得太丑了,不能接受,便自定义了个弹出框,用来接受输入

 

 

\

\

实现也不难,有需要的朋友可以联系我

4.判断用户点了哪个按钮

UIAlertView的委托UIAlertViewDelegate ,实现该委托来实现点击事件,如下:

.h文件

1 @interface ViewController : UIViewController<UIAlertViewDelegate> {
2
3 }

在.m实现委托的方法

1 - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
2 {
3     NSString* msg = [[NSString alloc] initWithFormat:@"您按下的第%d个按钮!",buttonIndex];
4     NSLog(@"%@",msg);
5 }在这个方法中的参数 buttonIndex,表示的是按钮的索引,上图的三按键 “取消”,“确定”,“其他”对应的索引分别为“0”,“1”,“2”.

用Delegate的方式处理点击时候,会带来一个问题比较麻烦,比如在一个页面里,有好几个UIAlertView的时候,处理点击的时候,会增加处理逻辑的复杂度,得做一些判断

这种情况有一个解决办法,就是用Block,添加Block的回调,代替Delegate,target和selector.(下次展开写这个内容)

5.添加子视图

这个用得也是比较多的,贴几个使用实例

添加 UIActivityIndicatorView

 

\

 

实现代码:


 1     UIAlertView *view = [[UIAlertView alloc]initWithTitle:@"请等待"
 2                                                   message:nil
 3                                                  delegate:nil               
 4                                         cancelButtonTitle:nil
 5                                         otherButtonTitles:nil,
 6                                                           nil];
 7    
 8     UIActivityIndicatorView *activeView = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
 9     activeView.center = CGPointMake(view.bounds.size.width/2.0f, view.bounds.size.height-40.0f);
10     [activeView startAnimating];
11     [view addSubview:activeView];
12    
13     [view show];

添加UITableView

 \

这个列表的几行代码也说不清楚,就说下思路吧,UIAlertView之所以有这么大的空间显示UITableView,用了比较取巧的一个办法


1 UIAlertView *view = [[UIAlertView alloc]initWithTitle:@"请选择"
2                                             message:@"\n\n\n\n\n\n\n\n\n\n"
3                                                 delegate:nil               
4                                        cancelButtonTitle:nil     
5                                                  otherButtonTitles:nil,
6                                                            nil];         
7  //其中用了10个换行符来撑大UIAlertView的然后再来添加UITableView,可以自行实现,如果有需要,请留言

基本上这是一些比较常用且实用的东西了,然后还有一个比较重要的东西,就是自定义和美化UIAlertView,相信很多人关心这个,自定义和美化的内容放在下一篇来细说,分析几个个人觉得不错的Demo源码

这篇关于IOS开发:UIAlertView使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1010258

相关文章

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

在.NET平台使用C#为PDF添加各种类型的表单域的方法

《在.NET平台使用C#为PDF添加各种类型的表单域的方法》在日常办公系统开发中,涉及PDF处理相关的开发时,生成可填写的PDF表单是一种常见需求,与静态PDF不同,带有**表单域的文档支持用户直接在... 目录引言使用 PdfTextBoxField 添加文本输入域使用 PdfComboBoxField

Git可视化管理工具(SourceTree)使用操作大全经典

《Git可视化管理工具(SourceTree)使用操作大全经典》本文详细介绍了SourceTree作为Git可视化管理工具的常用操作,包括连接远程仓库、添加SSH密钥、克隆仓库、设置默认项目目录、代码... 目录前言:连接Gitee or github,获取代码:在SourceTree中添加SSH密钥:Cl

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

windows和Linux使用命令行计算文件的MD5值

《windows和Linux使用命令行计算文件的MD5值》在Windows和Linux系统中,您可以使用命令行(终端或命令提示符)来计算文件的MD5值,文章介绍了在Windows和Linux/macO... 目录在Windows上:在linux或MACOS上:总结在Windows上:可以使用certuti

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

Python使用Matplotlib绘制3D曲面图详解

《Python使用Matplotlib绘制3D曲面图详解》:本文主要介绍Python使用Matplotlib绘制3D曲面图,在Python中,使用Matplotlib库绘制3D曲面图可以通过mpl... 目录准备工作绘制简单的 3D 曲面图绘制 3D 曲面图添加线框和透明度控制图形视角Matplotlib

Pandas中统计汇总可视化函数plot()的使用

《Pandas中统计汇总可视化函数plot()的使用》Pandas提供了许多强大的数据处理和分析功能,其中plot()函数就是其可视化功能的一个重要组成部分,本文主要介绍了Pandas中统计汇总可视化... 目录一、plot()函数简介二、plot()函数的基本用法三、plot()函数的参数详解四、使用pl