zoukankan      html  css  js  c++  java
  • UITextField点击选中文字

    1、先创建UITextField

    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view.
        self.view.backgroundColor = [UIColor greenColor];
        
        
        UITextField *TextF = [[UITextField alloc] initWithFrame:CGRectMake(10, 150, 200, 40)];
        
        TextF.borderStyle = UITextBorderStyleRoundedRect;
        TextF.text = @"11";
        TextF.delegate = self;
        [self.view addSubview:TextF];
        
        [TextF becomeFirstResponder];
        
        
        
    }
    

     2、不要在textFieldShouldBeginEditing里面实现,因为endDocument取出来为nil.

    在textFieldDidBeginEditing里面实现

    -(void) textFieldDidBeginEditing:(UITextField *)textField
    {
        NSLog(@"%@",textField.selectedTextRange);
        UITextPosition *endDocument = textField.endOfDocument;//获取 text的 尾部的 TextPositext
        
        UITextPosition *end = [textField positionFromPosition:endDocument offset:0];
        UITextPosition *start = [textField positionFromPosition:end offset:-textField.text.length];//左-右+
        textField.selectedTextRange = [textField textRangeFromPosition:start toPosition:end];
    }
    

    3、另外可以利用shouldChangeCharactersInRange实现补全选中的功能

    哦,如果反复点击textfiled出现第一次选中,第二次选中的状态的话,如果想一直被选中

    - (BOOL)textFieldShouldEndEditing:(UITextField *)textField{
        UITextPosition *beginDocument = textField.beginningOfDocument;
        UITextPosition *end = [textField positionFromPosition:beginDocument offset:0];
        UITextPosition *start = [textField positionFromPosition:beginDocument offset:0];//左-右+
        textField.selectedTextRange = [textField textRangeFromPosition:start toPosition:end];
        return YES;
    }
    
    ps:
    [textField performSelector:@selector(selectAll:) withObject: textField];
    也可以有选中效果,至于效果,因需求而异
    

      

    textFieldShouldEndEditing

    中实现

  • 相关阅读:
    PHP PSR 标准规范
    PHP线程安全与非线程安全的区别(NTS/TS)选择?
    goto 语法在 PHP 中的使用
    linux命令post请求发送json串
    接口日志表sql【我】
    sentinel最简单接入【我】
    Jps命令—使用详解
    MyBatis-Plus Wrapper条件构造器查询大全
    IDEA项目启动不起来也不打印日志【我】
    linux下查看nginx配置文件地址
  • 原文地址:https://www.cnblogs.com/GJ-ios/p/6847664.html
Copyright © 2011-2022 走看看