zoukankan      html  css  js  c++  java
  • 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

    具体效果如下:

  • 相关阅读:
    [GAMES101]计算机图形学 Assignment 作业1 透视投影 解析手记
    [GAMES101]计算机图形学 Assignment 0
    [算法竞赛入门经典] 象棋 ACM/ICPC Fuzhou 2011, UVa1589 较详细注释
    最长上升子序列
    Qt快速入门第三版PDF
    [C++]UVaLive7324 ASCII Addtion
    [算法竞赛入门经典]Message Decoding,ACM/ICPC World Finals 1991,UVa213
    由数据查询慢来浅谈下oracle中的like和instr函数的模糊查询效率问题
    swift学习资料 + 教程
    weblogic DataSource 配置注意事项
  • 原文地址:https://www.cnblogs.com/jiwangbujiu/p/5346628.html
Copyright © 2011-2022 走看看