gpt4 book ai didi

iOS 从 UITextView 中删除单词

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

假设,我在 UITextView 中有一个字符串:

NSString *str = @"Hello world. What @are you @doing ?" 

当我点击文本时,我可以一个字符一个字符地删除。但我想要的是,如果任何单词以 @ 开头(例如:@are),那么当我点击该单词并按退格键时,应该删除整个单词(即@are)而不是一个字符.是否有可能当我点击任何带有前缀“@”的单词(例如:@are)时,它会突出显示并按退格键会删除该单词?

我该怎么做?

最佳答案

enter image description here

好的,我有解决方案并且可以工作:)

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {

if ([string isEqualToString:@""]) {

UITextRange* selectedRange = [textField selectedTextRange];
NSInteger cursorOffset = [textField offsetFromPosition:0 toPosition:selectedRange.start];
NSString* text = textField.text;
NSString* substring = [text substringToIndex:cursorOffset];
NSString* lastWord = [[substring componentsSeparatedByString:@" "] lastObject];

if ([lastWord hasPrefix:@"@"]) {
// Delete word

textField.text = [[self.textField text] stringByReplacingOccurrencesOfString:lastWord withString:@""];
return NO;
}
}
return YES;
}// return

关于iOS 从 UITextView 中删除单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39290320/

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