Настройка кнопки «Изменить» в UINavigationController? - PullRequest
2 голосов
/ 08 декабря 2010

Как нарисовать кнопки «сохранить» и «отменить» на панели навигации, когда пользователь нажимает «изменить»?Кроме того, как мне скрыть удаляемые «ручки» и сделать каждую строку доступной для редактирования, как приложение «Контакты Apple»?

Ответы [ 3 ]

3 голосов
/ 08 декабря 2010

Чтобы создать кнопку Cancel с левой стороны, используйте метод setEditing:animated: и поместите в него следующее.

self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(cancelEdit:)] autorelease];

И для добавления кнопки Save:

self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSave target:self action:@selector(SaveEdit:)] autorelease];

Убедитесь, что вы внедрили cancelEdit: и saveEdit:.

3 голосов
/ 08 декабря 2010

В UIViewController есть метод -setEditing:animated:, который вы можете перезаписать. В этом методе вы можете вызвать -setRightBarButtonItem или -setLeftBarButtonItem.

Что касается вашего второго вопроса, взгляните на UITableViewDataSource. Есть метод с именем -tableView:moveRowAtIndexPath:toIndexPath.

РЕДАКТИРОВАТЬ: Если вы хотите ввести текст в UITableViewCell, вы должны поместить UITextField внутри него в -tableView:cellForRowAtIndexPath:. Смотри здесь .

1 голос
/ 08 марта 2012

К обоим ответам я должен добавить следующее:

Чтобы удалить добавленную кнопку, установите right/leftBarButtonItem на nil

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