2015-04-30 2 views
0

Я пытаюсь показать UIAlertController от UIBarButtonItem, как и в веб-браузере в приложении Facebook при нажатии кнопки действий. Но они не были успешными. Был поиск по переполнению стека, Google, Github и т. Д., Но не нашел того, что я ищу.Настоящий UIAlertController от UIBarButtonItem

Здесь вы можете увидеть, как она выглядит в приложении Facebook: UIAlertController in the Facebook app

Ниже приведен код, я пытался, но я заметил, что popoverPresentationController свойство nil.

func showActionSheet(sender: AnyObject) { 
    var optionsAlert = UIAlertController(title: nil, message: nil, preferredStyle: .ActionSheet) 

    // Add the actions 

    optionsAlert.modalPresentationStyle = .Popover 
    optionsAlert.popoverPresentationController?.barButtonItem = sender as! UIBarButtonItem 

    presentViewController(optionsAlert, animated: true, completion: nil) 
} 

Было бы очень благодарно, если бы кто-нибудь мог мне помочь в этом.

Заранее благодарен!

+0

Действительно? Ты уверен? Это не должно быть ничто. Это не если я запустил код выше. –

+0

Да, я уверен. Я не знаю, сколько способов я пытался заставить его работать. Я попытался установить modalInPopover в true, но он все равно не работает. Я искал в Интернете, но я нашел ответы на оставшиеся без ответа вопросы. Пожалуйста помоги – Frohmen

ответ

0

Я пришел к выводу, что невозможно показать UIAlertController как popover на iPhone. Это не то, что было сделано в приложении Facebook, как я изначально думал, исходя из того, что вы не можете добавлять значки в UIAlertAction.

Мне удалось решить эту проблему, добавив UITableViewController в мою раскадровку и добавив popper segue. После этого пособия мне помогли: http://richardallen.me/2014/11/28/popovers.html