2013-08-05 5 views
1

Я пишу приложение, где я позволяю пользователю редактировать какой-либо контент в текстовом представлении, и я хочу добавить кнопку «Отмена», чтобы позволить пользователю сохранять редактирование без взлома, чтобы закрыть клавиатуру.Отказ от первого ответчика UITextView. Временная UINavigationBar?

Я знаком с увольнением клавиатуры программно и всем. Единственная проблема, с которой я столкнулся сейчас, - проблема дизайна. Я хочу, чтобы пользователь нажал кнопку, как в приложении заметок, но у меня нет UINavigationBar.

Возможно ли создать временную навигационную панель и назначить ей кнопку «done»?

Я собираюсь реализовать это в пользовательском UIView, поэтому он должен быть независимым от контроллера. Я имею в виду, что я не знаю, есть ли в текущем контроллере UInavigationBar. Поэтому перед тем, как добавить временную, необходимо решить ее.

Любая помощь приветствуется.

+1

Одним из вариантов было бы создать UIToolbar с кнопкой распускать и установите его как свойство inputAccessoryView на клавиатуре. – geraldWilliam

ответ

1

Что-то, как это будет работать хорошо для того, что вы описываете:

В viewDidLoad:

UIToolbar *inputToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)]; 
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneButtonTapped)]; 
[inputToolbar setItems:[NSArray arrayWithObject:doneButton]]; 

self.theTextView.inputAccessoryView = inputToolbar; 

В doneButtonTapped

[self.view endEditing:YES]; 
+0

вот что у меня получилось. Просто с нажатой кнопкой справа :) – chrs

Смежные вопросы