UITextview隐藏光标/更改光标的颜色

时间:2012-07-17 14:54:12

标签: iphone uitextview

在我的应用程序中,在UITextview中我想隐藏光标。

如果这不可能,那么我想改变光标的颜色。

我们可以这样做吗?我已经搜索了它,但只获得了UITextfield的答案。

感谢。

3 个答案:

答案 0 :(得分:13)

在iOS 7上,您可以简单地将文本视图的tintColor设置为与其backgroundColor相同,以使光标不可见。

textView.tintColor = textView.backgroundColor;

或者您可以尝试:

textView.tintColor = [UIColor clearColor];

答案 1 :(得分:3)

只有在禁用编辑属性设置为否

时,才能隐藏光标

答案 2 :(得分:2)

要隐藏光标,只需子类UITextField并覆盖由-caretRectForPosition:实现的UITextField以符合UITextInput协议:

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

至于更改颜色或光标,我认为没有访问私有API是不可能的。

编辑:根据S. Soffes评论,显然可以通过tintColor属性更改颜色。