как выполнить возврат и удалить? - PullRequest
1 голос
/ 24 октября 2011

Я разрабатываю код, в котором мне нужно выполнить удаление и возврат с UITextView. Я попробовал:

-(IBAction)delete:(id)sender{
    uitextview.text =[uitextview.text substringToIndex:[uitextview.text length]-1];
}

это выполнение пробела и удаление последнего символа, но как удалить символ из определенного места в uitextview в определенном месте курсора.

Пожалуйста, помогите мне.

Ответы [ 2 ]

0 голосов
/ 29 ноября 2011

Спасибо за ваше предложение. Я хочу предложить один из способов выполнить эту работу.

 NSRange range = uitextview.selectedRange;


    NSRange selectedRange = uitextview.selectedRange;

    NSLog(@"%d",selectedRange.length);
    NSLog(@"%d",selectedRange.location);
    int temploc=selectedRange.location;

    NSMutableString *text = [uitextview.text mutableCopy];
    // NSLog(@"Length: %d Location: %d", range.length, range.location);
    if (range.length > 0) {
        [text deleteCharactersInRange:range];
    }
    if (range.length == 0 && range.location != 0) {
        NSRange backward = NSMakeRange(range.location - 1, 1);
        // NSLog(@"Length: %d Location: %d", backward.length, backward.location);
        [text deleteCharactersInRange:backward];
    }

    uitextview.text = text;
0 голосов
/ 24 октября 2011

Используйте свойство selectedRange UITextView.Это указывает на положение курсора и / или выделенный текст (длина будет нулевой, если текст не выделен).

Итак, если range.length> 0, вы можете использовать stringByReplacingCharactersInRange:withString: для удаления выделенного текста.

В противном случае создайте новый диапазон с местоположением на единицу меньше выбранного диапазона и длиной 1, а затем удалите этот символ.

Возможно, потребуется повторно установить для свойства selectedRange значениеубедитесь, что курсор находится в соответствующей позиции.Я представляю, что все это делается автоматически при использовании стандартной клавиатуры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...