2015-11-17 3 views
7

Я изменяю приложение, и у этого приложения есть несколько кнопок на панели навигации, я хотел добавить еще одну кнопку или элемент «Панель кнопок», перетащив ее в иерархию, но, похоже, я не могу добавить он как ребенок на панели навигации, я хотел спросить, есть ли у вас какие-либо решения для этого, вот снимок иерархии раскадровки, я хочу добавить еще один элемент панели бара или другую кнопку в элемент навигации.
Благодаря
enter image description hereДобавить еще одну кнопку в навигационную панель

+1

Там нет изображения, пожалуйста, загрузите изображение. –

+0

Большое спасибо, я прикрепил его – m0j1

ответ

15

Так что я только что создал пустой проект, и я могу это сделать:

enter image description here

Я также сделал такие вещи, как это раньше, когда я на самом деле использовать UIButton скорее чем элемент кнопки на панели, что дает дополнительную возможность настройки. Просто убедитесь, что вы установили выход на кнопку и в окне просмотра контроллера вызова self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.customButton];:

enter image description here

Вы можете иметь несколько элементов кнопки вправо бар и, если они перекрывают друг друга титул (если у вас есть один), то они по существу обрезаны. По моему мнению, у вас может быть столько кнопок, сколько вам нравится, пока пространство не исчезнет (это может быть разным в зависимости от устройства). Соответствующие документы:

Этот массив может содержать 0 или более элементов панели инструментов, которые будут отображаться с правой стороны навигационной панели . Элементы отображаются справа налево в том же порядке, что и в массиве. Таким образом, первый элемент в массиве - самый правый элемент, а остальные элементы добавляются слева от предыдущего элемента.

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

Пример с большим количеством кнопок:

enter image description here

Programatically Вы можете добавить кнопки с помощью:

navigationItem.rightBarButtonItems = [aButton, anotherButton, awesomeButton]

Просто убедитесь, что вы проверить, что наименьшее устройство, цель будет по-прежнему обеспечивают хороший UX для пользователя, если вы добавляете много кнопок.

+0

Ничего себе, спасибо, что gifs были потрясающими. может ли быть более 3 предметов? потому что проект, над которым я работаю, уже имеет 2 кнопки и одно изображение, и я пытаюсь добавить третью кнопку. Спасибо agin – m0j1

+0

@ m0j1 У вас наверняка есть третий элемент правой кнопки. Я обновил свой ответ более подробно. – Gordonium

5

здесь правильный ответ на стриж:

let barButton_array: [UIBarButtonItem] = [Button1, Button2] 
navigationItem.setRightBarButtonItems(barButton_array, animated: false) 
Смежные вопросы