如何在UITextView

时间:2015-06-20 09:27:54

标签: ios iphone ios8 uitextview uitextviewdelegate

我有一个uitextview,它成为viewload上的第一个响应者。但我想改变uitextview光标在x的某个位置的位置,仅用于前两行。

2 个答案:

答案 0 :(得分:1)

也许您可以使用UITextKit(a very good tutorial)。

例如,要使用圆角文本,您可以使用以下内容:

UIBezierPath* exclusionPath = [UIBezierPath bezierPathWithOvalInRect:yourTextView.bounds];
exclusionPath = [exclusionPath bezierPathByReversingPath];
yourTextView.textContainer.exclusionPaths = @[exclusionPath];

答案 1 :(得分:1)

您是否尝试过以下解决方案?

控制UITextField中的光标位置很复杂,因为输入框和计算位置涉及很多抽象。但是,它当然是可能的。您可以使用成员函数casper.options.onWaitTimeout = function() { //how to echo Selector which timed out here };

setSelectedTextRange

这是一个获取范围并选择该范围内文本的函数。如果您只想将光标放在某个索引处,只需使用长度为0的范围:

[input setSelectedTextRange:[input textRangeFromPosition:start toPosition:end]];

例如,将光标放在UITextField + (void)selectTextForInput:(UITextField *)input atRange:(NSRange)range { UITextPosition *start = [input positionFromPosition:[input beginningOfDocument] offset:range.location]; UITextPosition *end = [input positionFromPosition:start offset:range.length]; [input setSelectedTextRange:[input textRangeFromPosition:start toPosition:end]]; } 的{​​{1}}处:

idx

来源:https://stackoverflow.com/a/11532718/914111

由于某些忙碌没有测试过,所以请告诉我们它是否正常工作(可能在IOS8.0中有问题)