[Objective-C] 如何讓 iPhone 也能顯示出跟 iPad 一樣的 Popover 視窗

最近有人問我這支 App (空氣品質監測 https://goo.gl/gf2cBr),右上按鈕按下去後會跳出小視窗是如何做出來的,其實就是使用了 Popover視窗。



Popover 視窗主要用在螢幕較大的 iOS 裝置上,例如: iPad (下圖)。讓 iOS裝置透過 Popover 視窗可以讓資訊呈現以及操作介面看起來更精緻美觀。但是現在 iPhone 手機螢幕也做的越來越大,所以現在 iPhone 也可以使用 Popover 視窗囉。



步驟ㄧ:

在 Storyboard 上放上 ViewController2,ViewController1 右上設置一個 UIButton,並拉線到 ViewController2。



步驟二:

Action segue 選擇 Present As Popover。



步驟三:

設定 ViewController2 要顯示的寬跟高。


步驟四:

加上 UIPopoverPresentationControllerDelegate。


步驟五:

使用 segue 方法跟
Delegate 裡的 adaptivePresentationStyleForPresentationController 方法,並加入以下程式碼。


完成:

運行後效果如下。


- > Sampe Code:


留言

這個網誌中的熱門文章

Apple App Store 加速上架審查

[Swift] 隱藏狀態列 Status Bar,或只隱藏指定畫面的狀態列 Status Bar

[Objective-C] 解決點擊 UITextField 輸入框後被鍵盤升起擋住