Поиск…


параметры

параметр Описание
заглавие Название UIBarButtonItem
стиль Стиль UIBarButtonItem
цель Объект для получения действия UIBarButtonItem
действие Селектор (метод), который должен выполняться при нажатии кнопки UIBarButtonItem

замечания

Ссылка на self.navigationItem предполагает, что UIViewController встроен в UINavigationController.

Создание UIBarButtonItem

//Swift
let barButtonItem = UIBarButtonItem(title: "Greetings!", style: .Plain, target: self, action: #selector(barButtonTapped))
self.navigationItem.rightBarButtonItem = barButtonItem

//Objective-C
UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Greetings!" style:UIBarButtonItemStylePlain target:self action:@selector(barButtonTaped)];
self.navigationItem.rightBarButtonItem = barButtonItem;

введите описание изображения здесь

Создание UIBarButtonItem в построителе интерфейса

В приведенном ниже примере показано, как добавить кнопку панели навигации (называемую UIBarButtonItem ) в Interface Builder.

Добавьте контроллер навигации на свою раскадровку

Выберите свой контроллер просмотра, а затем в меню Xcode выберите « Редактор»> «Вставить»> «Контроллер навигации» .

скриншот навигационного контроллера

Кроме того, вы можете добавить UINavigationBar из библиотеки объектов.

Добавить элемент бара

Перетащите элемент UIBarButtonItem из библиотеки объектов в верхнюю панель навигации.

UIBarButtonItem в скриншоте библиотеки объектов

Он должен выглядеть так:

UIBarButtonItem размещен на скриншоте раскадровки

Установить атрибуты

Вы можете дважды щелкнуть «Item», чтобы изменить текст на «Refresh», но есть реальный значок Refresh, который вы можете использовать. Просто выберите Инспектор атрибутов для UIBarButtonItem и для элемента системы выберите Refresh .

введите описание изображения здесь

Это даст вам значок Refresh по умолчанию.

введите описание изображения здесь

Добавить действие IB

Управляйте перетаскиванием из UIBarButtonItem в контроллер просмотра, чтобы добавить @IBAction .

class ViewController: UIViewController {

    @IBAction func refreshBarButtonItemTap(sender: UIBarButtonItem) {
        
        print("How refreshing!")
    }
    
}

Вот и все.

Заметки

Элемент кнопки «Бар» Исходное изображение без цвета оттенка

Если barButtonItem имеет свойство ненулевого изображения (например, задано в barButtonItem интерфейса).

Objective-C

   barButtonItem.image = [barButtonItem.image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow