2016-08-01 2 views
3

Я использую UIPageViewController, подключенный к UINavigationController для отображения двух страниц, таблицы пользователей и таблицы чата.Как отображать кнопки на панели навигации в UIPageViewController?

Я пытаюсь выполнить следующие действия:

Две кнопки Users и Chat при нарезании резьбы, который появляется соответствующий контроллер представления. Я хочу эти кнопки на панели навигации.

Вот код, который я написал в окне просмотра страницы класса контроллера

viewDidLoad() 

    let storyBoard = UIStoryboard(name: "Main", bundle: nil) 
    let vc1 = storyBoard.instantiateViewControllerWithIdentifier("users") 
    let vc2 = storyBoard.instantiateViewControllerWithIdentifier("chat") 

    vcArray = [vc1, vc2] 

    self.setViewControllers([vc1], direction: .Forward, animated: true, completion: nil) 

    let button1 = UIButton(frame: CGRectMake(0, 30, self.view.frame.width/2, 30)) 
    let button2 = UIButton(frame: CGRectMake(self.view.frame.width/2+1, 30, self.view.frame.width/2, 30)) 
    button1.setTitle("Users", forState: .Normal) 
    button2.setTitle("Chat", forState: .Normal) 
    self.navigationController?.navigationBar.topItem?.titleView?.addSubview(button1) 

    self.navigationController?.navigationBar.topItem?.titleView?.addSubview(button2) 

К сожалению, ни одна из кнопок не появится в навигационной панели. На самом деле, я даже не могу присвоить заголовок навигационной панели. Как я могу это исправить?

Благодаря

ответ

0

Вы можете добавить несколько кнопку на правой стороне панели навигации, как это

let editImage = UIImage(named: "First")! 
let searchImage = UIImage(named: "Second")! 

let editButton = UIBarButtonItem(image: editImage, style: .Plain, target: self, action: "didTapEditButton:") 
let searchButton = UIBarButtonItem(image: searchImage, style: .Plain, target: self, action: "didTapSearchButton:") 

navigationItem.rightBarButtonItems = [editButton, searchButton] 

или

self.navigationController?.navigationBar?.navigationItem.rightBarButtonItems = [editButton, searchButton] 

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

+0

Спасибо за ваш ответ. К сожалению, это не решает проблему. Я перешел в RKSwipeViewController для встроенных функций –

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