Я наконец-то нашел решение этой проблемы! Вы можете поместить нужный текст в системный монтажный щит, а затем вставить его в текущую позицию курсора:
[myTextField paste:self]
Я нашел решение в блоге этого человека:
http://dev.ragfield.com/2009/09/insert-text-at-current-cursor-location.html
Функциональность вставки зависит от ОС V3.0, но я проверил ее, и она отлично работает для меня с пользовательской клавиатурой.
Обновление: Согласно приведенному ниже комментарию Jasarien, хорошей практикой будет сначала сохранить содержимое картона, а затем восстановить его. Для удобства вот мой код:
// Get a reference to the system pasteboard
UIPasteboard* lPasteBoard = [UIPasteboard generalPasteboard];
// Save the current pasteboard contents so we can restore them later
NSArray* lPasteBoardItems = [lPasteBoard.items copy];
// Update the system pasteboard with my string
lPasteBoard.string = @"-";
// Paste the pasteboard contents at current cursor location
[myUIField paste:self];
// Restore original pasteboard contents
lPasteBoard.items = lPasteBoardItems;
[lPasteBoardItems release];