Questo è quello che uso con una tastiera personalizzata, sembra funzionare bene, potrebbe esserci un approccio più pulito, non è sicuro.
NSRange range = myTextView.selectedRange;
NSString * firstHalfString = [myTextView.text substringToIndex:range.location];
NSString * secondHalfString = [myTextView.text substringFromIndex: range.location];
myTextView.scrollEnabled = NO; // turn off scrolling
NSString * insertingString = [NSString stringWithFormat:@"your string value here"];
myTextView.text = [NSString stringWithFormat: @"%@%@%@",
firstHalfString,
insertingString,
secondHalfString];
range.location += [insertingString length];
myTextView.selectedRange = range;
myTextView.scrollEnabled = YES; // turn scrolling back on.
Si prega di rispondere se qualcuno ha provato prima. Sto anche facendo lo stesso, ma non ottenendo successo quindi per favore aiutatemi. –