zoukankan      html  css  js  c++  java
  • ios-UITextField-常用方法

    这个控键最好用的就是代理,再用代理之前必须给这个控键设置一个代理

     _textfield.delegate=self;//这是设置代理的方法
    
    以下是协议
    - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
        NSLog(@"textFieldShouldBeginEditing");
        return YES;
    }        // 返回yes表示此控键可以接受编辑,才会调用下面这个方法,反之,返回no就不会调用下面这个方法
    - (void)textFieldDidBeginEditing:(UITextField *)textField
    {
        NSLog(@"textFieldDidBeginEditing");
    }
    - (BOOL)textFieldShouldEndEditing:(UITextField *)textField{
        NSLog(@"textFieldShouldEndEditing");
        return YES;
    }          // 返回yes才会失去第一相应,就是键盘可以消失,也就意味着会调用下面的方法,反之就不会,
    - (void)textFieldDidEndEditing:(UITextField *)textField{
        NSLog(@"textFieldDidEndEditing");
    }          
    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
        NSLog(@"%@%@",NSStringFromRange(range),string);
        return YES;
    }//这个方法是相当于java的change事件,每次改变都是内容都会输出改变的那个字符string,range表示此字符所处的位置
    
    - (BOOL)textFieldShouldClear:(UITextField *)textField {
        NSLog(@"textFieldShouldClear");
        return YES;
    }             // 表示这个文本域是否可以清除,就是看后面有没有哪个小x标示,这个测试没有成功,应该是版本不一样

     tf.clearButtonMode=UITextFieldViewModeWhileEditing;//上面这个方法的作用是,点击编辑文本后面的小x的时候会调用,就是清除的时候

    - (BOOL)textFieldShouldReturn:(UITextField *)textField{
        [textField resignFirstResponder];
        return YES;
    }//这个就是按键盘上的return的时候会触发的方法,返回yes和no有什么不一样,也没有测试出来
    
    [textField becomeFirstResponder];//获得第一响应
    [textField resignFirstResponder];//失去第一响应
     UITextField *field= [[UITextField alloc]init];
        field.frame=CGRectMake(10, 30, 300, 30);
        field.borderStyle=UITextBorderStyleRoundedRect;
        field.backgroundColor=[UIColor orangeColor];
        field.placeholder=@"请输入密码";//提示文本
        field.secureTextEntry=NO;//将此文本设置为密文输入,就是常用的输入密码
        field.keyboardType=UIKeyboardTypeDefault;//设置键盘样式
        field.keyboardAppearance=UIKeyboardAppearanceAlert;//设置键盘风格
        //设置弹出视图
        UIView *view=[[UIView alloc]initWithFrame:CGRectMake(0, 100, 320, 100)];
        view.backgroundColor=[UIColor purpleColor];
       // field.inputView=view;//设置弹出视图,这个就会覆盖键盘,这个视图我们可以自定义键盘
        
        UIView *leftview=[[UIView alloc]initWithFrame:CGRectMake(0, 100, 100, 100)];
        leftview.backgroundColor=[UIColor purpleColor];
        field.leftViewMode=UITextFieldViewModeWhileEditing;
        field.leftView=leftview;//这个就是占据文本框,同理也有又视图
        
        
        field.clearButtonMode=UITextFieldViewModeWhileEditing;//设置清除按钮出现模式,就是编辑的时候后面的小XX
        
        field.clearsOnBeginEditing=YES;//重新获得第一响应的是否清空上次输入的东西
        
        field.contentVerticalAlignment=UIControlContentVerticalAlignmentCenter;//设置纵向对齐
        
        field.contentHorizontalAlignment=UIControlContentVerticalAlignmentCenter;//横向对齐方式
        
        field.textAlignment=NSTextAlignmentCenter;//文本的对齐方式
        
        field.adjustsFontSizeToFitWidth=YES;//字号匹配文本多少,当文本太多回缩小自体。直到最小,然后才滚动
        
        field.autocapitalizationType=UITextAutocapitalizationTypeWords;//大小写控制,这个模式就是单词首字母大写
        
        field.returnKeyType=UIReturnKeyYahoo;//设置return键的样式
        
        field.delegate=self;
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(dddd:) name:UITextFieldTextDidBeginEditingNotification object:nil];//通知,开始编辑的时候会调用这个方法,但是这里有个疑惑的就是,当有多个文本框的时候也会调用吧
     UITextView *textview=[[UITextView alloc]initWithFrame:CGRectMake(0, 100, 320, 200)];//这个控键,大意和uitextfield是一样的,不过貌似这个是处理大文本的,应用场景应该是可以显示小说吧
    1.这里只记录一些学习笔记 2.这里只记录一些学习心得,如果心得方向有错,请留言 2.这里只记录一些日记(只为提升英语,暂时有点忙,等转行了开始写)
  • 相关阅读:
    @ControllerAdvice 全局异常处理
    SpringBoot 单文件和多文件上传
    Springboot application 本地HTTPS配置
    不使用spring-boot-starter-parent进行依赖的版本管理
    构造函数和函数式接口
    函数式接口和Lambda表达式
    使用FunctionalInterface提供工厂方法
    Future 和 CompletableFuture 异步任务 in Java
    单例
    使用私有仓库(Docker Registry 2.0)管理镜像
  • 原文地址:https://www.cnblogs.com/liyang31tg/p/3644217.html
Copyright © 2011-2022 走看看