问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么改uialertview的样式

发布网友 发布时间:2022-04-28 16:45

我来回答

1个回答

热心网友 时间:2022-06-19 18:57

首先 我们知道,UIAlertView实际上有多种样式,在xcode中,按住cmd点击UIAlertView,进入头文件我们看到:
1 typedef NS_ENUM(NSInteger, UIAlertViewStyle) {
2 UIAlertViewStyleDefault = 0, //默认样式
3 UIAlertViewStyleSecureTextInput, //加密文本样式
4 UIAlertViewStylePlainTextInput, //普通文本样式
5 UIAlertViewStyleLoginAndPasswordInput //帐号密码样式
6 };

其次 , 我们实现一下加密文本样式的UIAlertView:
1、在 viewController.m 文件中的 @interface部分,遵守 <UIAlertViewDelegate> 协议:
1 #import "moboViewController.h"
2
3 @interface moboViewController () <UIAlertViewDelegate>
4
5 @end

2、在- (void) viewDidLoad 方法中初始化 UIAlertView的一个 实例,并且设定其样式为 加密文本样式。
1 - (void)viewDidLoad
2 {
3 [super viewDidLoad];
4
5 // 初始化 alertView,设定代理为 self
6 UIAlertView *altView = [[UIAlertView alloc]initWithTitle:[self altTitle] message:[self altMSG] delegate:self cancelButtonTitle:[self cancelBtnTitle] otherButtonTitles:[self otherBtnTitle], nil];
7
8 // 设定altView类型
9 [altView setAlertViewStyle:UIAlertViewStyleSecureTextInput];
10
11 // 拿到UITextField
12 UITextField *tf = [altView textFieldAtIndex:0];
13
14 // 设置textfield 的键盘类型。
15 tf.keyboardType = UIKeyboardTypeNumberPad;
16
17 // 显示 alertView
18 [altView show];
19
20 }

3、实现-(NSString*) altTitle 、-(NSString*) altMSG、-(NSString*) altTitle、-(NSString*) cancelBtnTitle、-(NSString*) otherBtnTitle方法。
1 //返回 标题
2 - (NSString *)altTitle{
3 return @"下线通知";
4 }
5
6 //返回 消息体
7 - (NSString *)altMSG{
8 return @"你的帐号在异地登录,密码可能泄露,建议前往http://mobodemy.com进行修改。";
9 }
10
11 //返回 退出按钮 标题
12 - (NSString *) cancelBtnTitle {
13 return @"退出";
14 }
15
16 //返回 重新登录 按钮标题
17 - (NSString *) otherBtnTitle {
18 return @"重新登录";
19 }

4、实现监听按钮点击方法
1 //监听点击时间 代理方法
2 - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
3 {
4 NSString *btnTitle = [alertView buttonTitleAtIndex:buttonIndex];
5 if ([btnTitle isEqualToString:[self cancelBtnTitle]]) {
6 NSLog(@"你点击了退出");
7 }
8 else if ([btnTitle isEqualToString:[self otherBtnTitle]] ) {
9 NSLog(@"你点击了重新登录按钮");
10 }
11 }
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
现在思科的CCNA,CCNE,CCIP的考证费分别是多少啊,通过率怎样 长春小飞没有车没有房 碳钢的多久生锈 碳钢多久会生锈 碳钢多长时间会开始生锈 碳钢和铝哪个容易生锈 梦见天宫图是什么意思 光遇2023好友树解锁图鉴 光遇二级节点多少个 ...火柴小女孩》《词语手册》里有很多词语的意思的,求告知 暖融融解释 网页alert对话框 html怎么更改弹窗样式 车辆购置税最新的!!现在是多少啊?百分之几? 燃气烤箱如何修理? 商用燃气烤箱故障判断与维修 自由职业者交够十五年社保.到退休后能拿多少养老金?怎么计算? 宣城地区交自由职业社保满15年后退休领多少钱一个月 自由职业者交够十五年社保.到退休后能拿多少养老金?怎么计算 自由职业者交够十五年社保退休后能拿多少养老金? 灵活就业险交满15年后每个月可以拿多少钱 梦到地震 人们都在逃跑 急求高人解梦 谢谢!! 梦见地震了,别人带着我们逃跑成功了,什么意思?求解??谢谢~~ 梦见快地震了拼命拉着爱人跑 跟男朋友做同一个梦梦到地震 梦到跟男朋友在一起发生地震了 梦见地震逃跑,过河没有桥和路堵着什么意思? 笔记本电脑用手机流量上网可以吗 昨晚上梦见突然间城市地震了,我和男朋友就开始躲,找了很久也没找到... 笔记本电脑能无线连接用手机的流量上网吗 笔记本电脑可以用手机的流量上网吗 As3 如何调节Alert字体大小 如何修改由JS弹出的网页对话框标题 前端重写alert()之后怎么全局调用? android alertDialog如何改变其样式,就是可以修改其背景,让背景为其他的颜色或背景图 246000元年利率2.9%一年利率多少 6万元按年24%计息18年后本息共多少? 信用卡6000额度分24期付款利息怎么计算 6000元一年787.83元的利息年利率是多少呢? 存6000元,年利率24%,每月复利一次,求一年后的本利和? 贷款6万 分期3年 年利率24来算 3年利息应该是多少 6000块钱年利率百分之24 4个月以后应该还多少? 6000的贷款分24期,年利率百分之18 一共要给多少钱? 借了6000分二期需要还6180.6年利率是多少怎么算? 6000日利息0.05%是多少 6000元年利率9.55%一天是多少钱? 抖音多少推送到1万流量 抖音主播在直播间给别人看号提升一万播放量用的什么方法? 抖音短视频播放量如何破1万点击量? 抖音浏览量超1万好处是? 深圳证券交易所上市规则