我正在尝试在平移手势上移动 UITextfield 的光标。但我面临一些问题。
我有一个 UITextfield 和 UIView(与 UITextfield 大小相同)。
我在 UIView 上添加了平移手势,因为我想通过在 UIView 上拖动手指来移动 UITextfield 的光标位置
但是当我移动光标位置并且光标位于 UITextfield 的角落时,不会发生文本滚动。
谁能帮我解决这个问题?
代码 :
-(void)panGesture:(UIPanGestureRecognizer *)pan
{
CGPoint translation = [pan translationInView:btnMove];
CGPoint vel = [pan velocityInView:btnMove];
UITextRange *range = txtSearch.selectedTextRange;
NSInteger endOffset = [txtSearch offsetFromPosition:txtSearch.beginningOfDocument toPosition:range.end];
if (vel.x > 0)
{
endOffset = endOffset + 1;
NSLog(@"right - %ld",(long)endOffset);
}
else{
endOffset = endOffset - 1;
NSLog(@"left - %ld",(long)endOffset);
}
UITextPosition *from = [txtSearch positionFromPosition:[txtSearch beginningOfDocument] offset:endOffset];
UITextPosition *to = [txtSearch positionFromPosition:[txtSearch beginningOfDocument] offset:endOffset];
txtSearch.selectedTextRange = [txtSearch textRangeFromPosition:from toPosition:to];
}