57
задан 17 December 2015 в 15:10

5 ответов

С Быстрым 4

let editImage       = UIImage(named: "toolbar_edit")!
let favoriteImage   = UIImage(named: "toolbar_fav_solid")!

let editButton      = UIBarButtonItem(image: editImage,  style: .plain, target: self, action: #selector(didTapEditButton))
let favoriteButton  = UIBarButtonItem(image: favoriteImage,  style: .plain, target: self, action: #selector(didTapFavoriteButton))

navigationItem.rightBarButtonItems = [editButton, favoriteButton]

действие Щелчка для тех кнопок

@objc func didTapEditButton(sender: AnyObject) {
    print("edit")
}

@objc func didTapFavoriteButton(sender: AnyObject) {
    print("favorite")
}

Выходной снимок экрана (iPhone X)

enter image description here

3
ответ дан 1 November 2019 в 15:40

Я не знаю, не было ли Интерфейсное решение Разработчика возможно прежде, но по крайней мере с новым обновлением (Xcode 11.0), возможно перетащить два UI Bar Buttons в пространство rightBarButton. Две торговых точки и действия могут затем быть перетащены в код как всегда.

, Так как OP не попросил решение без IB, я думаю, что это также квалифицирует как ответ.

0
ответ дан 1 November 2019 в 15:40

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

Причина : Мой Контроллер Представления был Наследован от UIViewController, и я должен был установить Добавить в корзину Кнопку и Кнопку поиска На Правой стороне. И Все мои контроллеры представления были частью UITabbarController.

    let editImage = UIImage(named: "OrdersTabIcon")
    let searchImage = UIImage(named: "OrdersTabIcon")
    let editButton = UIBarButtonItem(image: editImage, style: .plain, target: self, action: #selector(iconTapped))
    let searchButton = UIBarButtonItem(image: searchImage, style: .plain, target: self, action: #selector(iconTapped))

Вместо того, чтобы использовать

 self.navigationItem.setRightBarButtonItems([editButton, searchButton], animated: true)

Использование Это.

self.navigationController?.navigationBar.topItem?.setRightBarButtonItems([editButton, searchButton], animated: true)
0
ответ дан 1 November 2019 в 15:40

Для iOS Xamarin с новыми обновлениями. это похоже.

UIBarButtonItem Button1 = new UIBarButtonItem(UIImage.FromBundle("Image1"), UIBarButtonItemStyle.Plain,YourEventHandler);

UIBarButtonItem Button2 = new UIBarButtonItem(UIImage.FromBundle("Image1"), UIBarButtonItemStyle.Plain,YourEventHandler);

NavigationItem.SetRightBarButtonItems(new[]{ Button1, Button2 }, true);
-1
ответ дан 1 November 2019 в 15:40

Используйте navigationItem's rightBarButtonItems, который берет массив UIBarButton. Appledoc

let share = UIBarButtonItem(barButtonSystemItem: .action, target: self, action: #selector(shareTapped))
let add = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(addTapped))
navigationItem.rightBarButtonItems = [add, share]
0
ответ дан 1 November 2019 в 15:40

Другие вопросы по тегам:

Похожие вопросы: