IOS开发-UI学习-UITextField的具体属性及用法

直接上代码,里面有各种属性的用法注释,至于每个属性有多个可以设置的值,每个值的效果如何,可以通过查看这个函数参数的枚举量,并逐一测试。

  1 //制作登陆界面
  2 #import "ViewController.h"
  3
  4 @interface ViewController (){
  5
  6 //定义全局变量(控件)
  7     UITextField *username;
  8     UITextField *password;
  9     UIButton *resignbutton;
 10     UIButton *loginbutton;
 11     int i;
 12     NSMutableArray *imagearray;
 13     UIImageView *nameImage;
 14 }
 15 @end
 16
 17 @implementation ViewController
 18
 19 - (void)viewDidLoad {
 20     [super viewDidLoad];
 21
 22 //    获取屏幕分辨率
 23     CGRect rect = [[UIScreen mainScreen]bounds];
 24     CGFloat screenw = rect.size.width;
 25     CGFloat screenh = rect.size.height;
 26
 27 //    初始化密码掩码标志位
 28     i=0;
 29
 30 // 用户名输入框
 31 //    创建
 32     username = [[UITextField alloc]initWithFrame:CGRectMake(3*screenw/8, 3*screenh/20, 4*screenw/8, screenh/20)];
 33 //    设置边框
 34     [username setBorderStyle:UITextBorderStyleRoundedRect];
 35 //    设置水印提示
 36     username.placeholder = @"请输入用户名:";
 37 //    设置自动联想输入
 38     username.autocorrectionType = UITextAutocorrectionTypeYes;
 39 //    自动联想输入方式设置为根据单词首字母联想
 40     username.autocapitalizationType = UITextAutocapitalizationTypeWords;
 41 //    键盘右下角按键的类型
 42     username.returnKeyType = UIReturnKeyDone;
 43 //    右侧图片设置
 44 //  nameImage.image = [UIImage imageNamed:@"cat_eat0000.jpg"];
 45 //    设置代理
 46     username.delegate = self;
 47 //    设置右侧清除按钮模式
 48     username.clearButtonMode = UITextFieldViewModeWhileEditing;
 49 //    初始化动画素材存放数组
 50     imagearray = [[NSMutableArray alloc]initWithCapacity:40];
 51 //    通过循环为数组装载图片
 52     for (int x=0; x<40; x++) {
 53         [imagearray addObject:[UIImage imageNamed:[NSString stringWithFormat:@"cat_eat00%.2d.jpg",x]]];
 54     }
 55 //    初始化图片位置,大小,由于图片限制在输入框右侧,所用坐标设置为0
 56     nameImage = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 40  , 40)];
 57 //    设置输入框右侧动画图片来源为图片数组
 58     nameImage.animationImages = imagearray;
 59 //    设置动画播放持续时长
 60     nameImage.animationDuration = 2;
 61 //    设置动画重复次数为无限循环
 62     nameImage.animationRepeatCount = 0;
 63
 64 //    设置输入框右侧图片
 65     username.rightView = nameImage;
 66 //    设置右侧图片模式
 67     password.rightViewMode = UITextFieldViewModeWhileEditing;
 68 //    在启动程序后获取焦点
 69     [username becomeFirstResponder];
 70 //    加载到View上
 71     [self.view addSubview:username];
 72
 73
 74 //    密码输入框
 75     password = [[UITextField alloc]initWithFrame:CGRectMake(3*screenw/8, 5*screenh/20, 4*screenw/8, screenh/20)];
 76     [password setBorderStyle:UITextBorderStyleRoundedRect];
 77 //    设置输入提示水印文字
 78     password.placeholder = [NSString stringWithFormat:@"请输入密码:"];
 79 //    设置输入掩码
 80     password.secureTextEntry = YES;
 81     username.returnKeyType = UIReturnKeyDone;
 82 //    设置字体和字号
 83     password.font = [UIFont fontWithName:@"Arial" size:20];
 84
 85     UIImageView *rightImage = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 25, 15)];
 86     rightImage.image = [UIImage imageNamed:@"1"];
 87     password.rightView = rightImage;
 88     password.rightViewMode = UITextFieldViewModeWhileEditing;
 89     [self.view addSubview:password];
 90
 91
 92 //    设置密码输入框密码掩码开关的按钮
 93     UIButton *eyebutton = [[UIButton alloc]initWithFrame:CGRectMake(7*screenw/8-1*screenw/16, 5*screenh/20+5, 1*screenw/16, screenh/30)];
 94     eyebutton.backgroundColor = [UIColor whiteColor];
 95 //    eyebutton.alpha = 0;
 96         eyebutton.alpha = 0.1;
 97
 98     [eyebutton addTarget:self action:@selector(haha:) forControlEvents:UIControlEventTouchUpInside];
 99     [self.view addSubview:eyebutton];
100
101
102
103 //    注册按钮
104     resignbutton = [[UIButton alloc]initWithFrame:CGRectMake(1*screenw/8, 7*screenh/20, 5*screenw/16, screenh/20)];
105     [resignbutton setTitle:@"注册" forState:UIControlStateNormal];
106     resignbutton.backgroundColor = [UIColor colorWithRed:0.461 green:1.000 blue:0.856 alpha:1.000];
107     [self.view addSubview:resignbutton];
108
109
110 //    登陆按钮
111     loginbutton = [[UIButton alloc]initWithFrame:CGRectMake(9*screenw/16, 7*screenh/20, 5*screenw/16, screenh/20)];
112     [loginbutton setTitle:@"登陆" forState:UIControlStateNormal];
113     loginbutton.backgroundColor = [UIColor colorWithRed:0.461 green:1.000 blue:0.856 alpha:1.000];
114     [self.view addSubview:loginbutton];
115
116
117
118
119
120 //    用户名提示
121     UILabel *usernamelabel =[[UILabel alloc]initWithFrame:CGRectMake(1*screenw/8, 3*screenh/20, 2*screenw/8, screenh/20)];
122     usernamelabel.text = @"用户名:";
123     [self.view addSubview:usernamelabel];
124
125
126 //    密码输入提示
127     UILabel *passwordlabel =[[UILabel alloc]initWithFrame:CGRectMake(1*screenw/8, 5*screenh/20, 2*screenw/8, screenh/20)];
128     passwordlabel.text = @"密码:";
129     [self.view addSubview:passwordlabel];
130 }
131
132
133 //UiTextField代理事件
134 - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
135     [nameImage startAnimating];
136     return YES;
137 }
138
139
140
141 //设置密码输入框密码掩码开关的按钮响应事件
142 -(void)haha:(id)sender{
143     i++;
144     if (i%2==0) {
145         password.secureTextEntry = NO;
146     }if (i%2==1) {
147         password.secureTextEntry = YES;
148     }
149
150 }
151
152
153 //输入完后点击输入框空白处让键盘消失
154 -(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
155     [username resignFirstResponder];
156     [password resignFirstResponder];
157 }
158
159
160
161 - (void)didReceiveMemoryWarning {
162     [super didReceiveMemoryWarning];
163     // Dispose of any resources that can be recreated.
164 }
165
166 @end

具体效果如下:

时间: 2024-10-06 00:23:00

IOS开发-UI学习-UITextField的具体属性及用法的相关文章

iOS开发UI篇—CAlayer层的属性(转摘)

iOS开发UI篇—CAlayer层的属性 一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property CGPoint position; 用来设置CALayer在父层中的位置 以父层的左上角为原点(0, 0) @property CGPoint anchorPoint; 称为“定位点”.“锚点” 决定着CALayer身上的哪个点会在position属性所指的位置 以自己的左上角为原点(0, 0) 它

iOS之UI学习-UITextField代理篇

</pre><pre name="code" class="objc">#import "ViewController.h" //签订代理协议 @interface ViewController ()<UITextFieldDelegate> @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; //须知:U

ios开发UI篇—UITextfield

概述 UITextField在界面中显示可编辑文本区域的对象. 您可以使用文本字段来使用屏幕键盘从用户收集基于文本的输入.键盘可以配置许多不同类型的输入,如纯文本,电子邮件,数字等等.文本字段使用目标操作机制和委托对象来报告在编辑过程中所做的更改. 除了基本的文本编辑行为之外,还可以将叠加视图添加到文本字段以显示其他信息并提供其他可定位控件.您可以为诸如书签按钮或搜索图标等元素添加自定义叠加视图.文本字段提供内置的叠加视图来清除当前文本.自定义覆盖视图的使用是可选的. 属性和方法 初始化 UIT

iOS开发-UI (五)UITextField

UITextField使用 1.创建方式 例: UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)]; 2.常用方法和属性 1)边框样式 @property(nonatomic)  UITextBorderStyle   borderStyle; UITextBorderStyleNone                       没有边框,背景默认为透明 UITextBorderS

IOS开发-UI控件的常见属性

一.概述 程序运行过程中,我们经常要改变控件的显示状态,如下载进度.播放器的播放进度.图片的放大缩小等,那么如何修改呢? 二. 修改UI控件的状态 每个UI控件都是一个对象,要修改这个对象的状态就是要修改这个对象的属性,比如,修改UILabel显示的文字就修改UILabel的text属性 @interface UILabel : UIView <NSCoding> @property(nonatomic,copy) NSString *text; // default is nil @end

iOS开发UI篇—UITableView的常用属性与方法

UITableView UITableView内置了两种样式:UITableViewStylePlain,UITableViewStyleGrouped <UITableViewDataSource,UITableViewDelegate>里的方法: tableView处理步骤 #pragma mark 1.有多少组 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView #pragma mark 2.第section

iOS开发UI篇—CAlayer层的属性

一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property CGPoint position; 用来设置CALayer在父层中的位置 以父层的左上角为原点(0, 0) @property CGPoint anchorPoint; 称为“定位点”.“锚点” 决定着CALayer身上的哪个点会在position属性所指的位置 以自己的左上角为原点(0, 0) 它的x.y取值范围都是0~1,默认值为(0.

iOS开发UI 篇—CAlayer层的属性

一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property CGPoint position; 用来设置CALayer在父层中的位置 以父层的左上角为原点(0, 0) @property CGPoint anchorPoint; 称为“定位点”.“锚点” 决定着CALayer身上的哪个点会在position属性所指的位置 以自己的左上角为原点(0, 0) 它的x.y取值范围都是0~1,默认值为(0.

学习IOS开发UI篇--UI知识点总结(一) UIButton/UITextField

UIkit框架下的几个基本控件,UIButton,UITextField,UILabel,UIImageView,UIScrollView,UITableView,UITableViewCell,UIPageControl; 他们的继承关系,UILabel,UIImageView,UIScrollView,UITableViewCell,直接继承自UIView; UIButton,UITextField,UIPageControl,继承自UIControl; UIControl继承自UIView

学习IOS开发UI篇--UI知识点总结(四) UITabelView/UITableViewCell

UITabelView:常用属性 @property (nonatomic)          CGFloat    rowHeight;             // will return the default value if unset @property (nonatomic)          CGFloat     sectionHeaderHeight;   // will return the default value if unset @property (nonatom