1

在我的UITextField子类中,我使用下一个代码来隐藏闪烁的插入符号:

- (CGRect)caretRectForPosition:(UITextPosition *)position
{
    return CGRectZero;
}

我的目标是设置一个属性来启用或禁用上述功能。我的问题是我不知道为了显示插入符号而默认的矩形是什么。

我想到的另一个选择是设置一个布尔值来确定是否覆盖该方法caretRectForPosition。那可能吗?

4

1 回答 1

4

那么你可以检查你的标志并相应地返回(零矩形或super实现)。像这样的东西:

- (CGRect)caretRectForPosition:(UITextPosition *)position
{
    return self.isCaretEnabled ? [super caretRectForPosition:position] : CGRectZero;
}

isCaretEnabled你的BOOL财产当然在哪里。

于 2013-10-17T10:53:45.147 回答