2012-09-19 15 views
1

我有一个字段可以将您的电话号码与正确的格式和所有内容相关联,但问题是当您要修改其中一个电话号码时,它会跳到字段的末尾以删除或包含数字,但跳到结束automaticaly,请有人可以帮助我吗?如何更改电话号码时不将光标移动到字段的末尾?

+0

解决方案:首先获取光标的初始位置(或选定范围的末尾): UITextRange * selectedRange = [textField selectedTextRange]; NSInteger offset = [textField offsetFromPosition:textField.endOfDocument toPosition:selectedRange.end]; 修改textField的文本后,使用UITextPosition重置光标位置,如下所示: UITextPosition * newPos = [textField positionFromPosition:textField.endOfDocument offset:offset]; textField.selectedTextRange = [textField textRangeFromPosition:newPos toPosition:newPos]; – diana

回答

1

这是一个解决方案:

首先得到光标的初始位置(或所选范围的结尾):

UITextRange * selectedRange = [textField selectedTextRange]; NSInteger offset = [textField offsetFromPosition:textField.endOfDocument toPosition:selectedRange.end];

UITextPosition * newPos =:

修改TextField的文本之后,通过使用UITextPosition如下复位光标位置[文本字段positionFromPosition:textField.endOfDocument偏移:偏移]; textField.selectedTextRange = [textField textRangeFromPosition:newPos toPosition:newPos];

相关问题