iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 10
0
Software Development

iOS APP開發學習筆記 系列 第 10

DAY10 NavigationController

  • 分享至 

  • twitterImage
  •  

昨天介紹了利用Segue實現跳轉畫面的功能,但如果所有跳轉畫面都用Segue的話就會非常難以管理,所以今天就來介紹一下NavigationController。

NavigationController

NavigationController就像是一個容器,裡面可以用來放置及疊放各個頁面,畫面上方預設會有一個導覽列(Navigation Bar),其中可以放置標題及按鈕,來切換或退出頁面,像是內建的設定App。

利用Stroyboard建立NavigationController

首先在Storyboard中點選畫面一,接著點選上方工具列Edit -> Embed In -> NavigationController
https://ithelp.ithome.com.tw/upload/images/20181024/20107549KZbFTkKXJh.png

之後就會看到NavigationController出現在畫面一(Root Controller)之前了,NavigationController用來管理所有包含在內的畫面,利用堆疊的畫面做處理,每次跳到下一個畫面就將畫面疊到最上面並顯示,離開後就將畫面抽離,並顯示前一個。

https://ithelp.ithome.com.tw/upload/images/20181024/20107549OZXUNZJ7G8.png

在Root Controller之後的每一個畫面都會出現一個Back按鈕在左上角,如果不想要讓Back按鈕出現,只要呼叫setHidesBackButton()函數即可。

self.navigationItem.setHidesBackButton(true, animated: true)

另外也可以自己新增右上角的按鈕,在元件列表中選擇Bar Button Item。
https://ithelp.ithome.com.tw/upload/images/20181025/20107549MSTbOLaVji.png

接著將元件拉至Navigationbar右邊的位置即可加入。
https://ithelp.ithome.com.tw/upload/images/20181025/2010754906kN3PF19d.png

接著切出兩個畫面,按住control鍵再用滑鼠將Button拖曳至程式碼中,connection欄位選擇Action,便能在點擊此按鈕時觸發函數了。
https://ithelp.ithome.com.tw/upload/images/20181025/20107549V3PwYxdykP.png


上一篇
DAY9 Storyboard Segue
下一篇
DAY11 Tableview
系列文
iOS APP開發學習筆記 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言