zoukankan      html  css  js  c++  java
  • UITextField 光标的位置设置获取

    UITextField 光标的位置设置获取

    通过给UITextField 加一个拓展

     //#import "UITextField+ExtentRange.h"  

    #import <UIKit/UIKit.h> 

    @interface UITextField (ExtentRange)  

    - (NSRange) selectedRange;  

    - (void) setSelectedRange:(NSRange) range;  

    @end  

    // #import "UITextField+ExtentRange.m"  

    #import "UITextField+ExtentRange.h"  

    @implementation UITextField (ExtentRange)  

    - (NSRange) selectedRange  

    {  

       UITextPosition* beginning = self.beginningOfDocument;  

      UITextRange* selectedRange = self.selectedTextRange;  

      UITextPosition* selectionStart = selectedRange.start;  

      UITextPosition* selectionEnd = selectedRange.end;  

      const NSInteger location = [self offsetFromPosition:beginning toPosition:selectionStart];  

      const NSInteger length = [self offsetFromPosition:selectionStart toPosition:selectionEnd];  

      return NSMakeRange(location, length);  

    }  

    - (void) setSelectedRange:(NSRange) range  

    {  

       UITextPosition* beginning = self.beginningOfDocument;  

      UITextPosition* startPosition = [self positionFromPosition:beginning offset:range.location];  

       UITextPosition* endPosition = [self positionFromPosition:beginning offset:range.location + range.length];  

      UITextRange* selectionRange = [self textRangeFromPosition:startPosition toPosition:endPosition];  

      [self setSelectedTextRange:selectionRange];  

    }  

    @end  

  • 相关阅读:
    2018
    线程的五大状态
    SQL 列转行与行转列
    python中元组(tuple)的拆包unkacping
    python字典的相关操作总结
    C语言使用typedef进行类型重定义
    C++中namespace的用法理解
    ping: unknown host 解决办法
    go环境变量配置liteide配置
    svn出现Authorization failed
  • 原文地址:https://www.cnblogs.com/56ik/p/5135318.html
Copyright © 2011-2022 走看看