UITextview Hide cursor/Change color of cursor

前端 未结 3 922
时光取名叫无心
时光取名叫无心 2021-01-13 20:30

In my application, In UITextview i want to hide cursor.

If this is not possible then I want to change color of cursor.

Can we do this? I have search for it b

相关标签:
3条回答
  • 2021-01-13 21:03

    You can hide the cursor only if you disabled the editing property set to No

    0 讨论(0)
  • 2021-01-13 21:08

    To hide the cursor, just subclass UITextField and override -caretRectForPosition: which is implemented by UITextField to conform with UITextInput protocol:

    - (CGRect)caretRectForPosition:(UITextPosition *)position
    {
        return CGRectZero;    // ensures the cursor won't appear
    }
    

    As for changing the color or the cursor, I think it's not possible without accessing private API.

    EDIT: as per S. Soffes comment, changing the color is possible via tintColor property, obviously.

    0 讨论(0)
  • 2021-01-13 21:10

    On iOS 7, you can simply set the tintColor of your text view as the same of its backgroundColor to make the cursor invisible.

    textView.tintColor = textView.backgroundColor;
    

    or you can try:

    textView.tintColor = [UIColor clearColor];
    
    0 讨论(0)
提交回复
热议问题