gpt4 book ai didi

ios - 在ios中获取UITextField的光标位置

转载 作者:技术小花猫 更新时间:2023-10-29 10:06:38 26 4
gpt4 key购买 nike

我正在尝试控制 UITextField 中的光标位置。用户一次不能在文本字段中间插入一个以上的字符。它将它移动到文本字段的末尾。所以这篇文章在 SO 中:Control cursor position in UITextField它解决了我的问题。但我需要知道当前光标位置。

我的代码是这样的:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
if (textField.tag == 201)
{
[myclass selectTextForInput:textField atRange:NSMakeRange(idx, 0)];
}
}

它在 idx 处给我一个错误。我如何找到它?

最佳答案

UITextField 符合 UITextInput 协议(protocol),该协议(protocol)具有获取当前选择的方法。但是方法很复杂。你需要这样的东西:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
if (textField.tag == 201) {
UITextRange *selRange = textField.selectedTextRange;
UITextPosition *selStartPos = selRange.start;
NSInteger idx = [textField offsetFromPosition:textField.beginningOfDocument toPosition:selStartPos];

[myclass selectTextForInput:textField atRange:NSMakeRange(idx, 0)];
}
}

关于ios - 在ios中获取UITextField的光标位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16432364/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com