知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
Swift語言IOS8開發(fā)戰(zhàn)記8.NavigationController
發(fā)表時(shí)間:2020-10-19
發(fā)布人:葵宇科技
瀏覽次數(shù):59
在IOS應(yīng)用中,可以采取構(gòu)造化程度更高的場(chǎng)景進(jìn)行構(gòu)造,個(gè)中有兩種最風(fēng)行的應(yīng)用法度榜樣構(gòu)造方法,分別是應(yīng)用導(dǎo)航欄控制器和選項(xiàng)卡欄控制器。導(dǎo)航控制器可以或許讓用戶年腋荷瑣屏幕切換到另一個(gè)屏幕,如許可以顯示更多細(xì)節(jié)。選項(xiàng)卡欄控制器常用于開辟包含多個(gè)屏幕的應(yīng)用法度榜樣,個(gè)中每個(gè)選項(xiàng)卡都顯示一個(gè)不合的場(chǎng)景,讓用戶可以或許與一組控件交互。
之前我們已經(jīng)用了很多次的應(yīng)用了導(dǎo)航控制器UIViewController,它的重要功能是控制屏幕的切換,供給一個(gè)顯示用的view界面,同時(shí)包含view的加載、卸載事宜的重定義功能。在IOS應(yīng)用中,導(dǎo)航控制器(UINavigatinoController)可以治理一系列顯示層次型信息的場(chǎng)景。也就是第一個(gè)場(chǎng)景顯示關(guān)于特定場(chǎng)景的高等視圖,第二個(gè)場(chǎng)景用于進(jìn)一步描述,第三個(gè)場(chǎng)景再進(jìn)一步描述,以詞攀類推。經(jīng)由過程導(dǎo)航治理器可以治理這種場(chǎng)景間的過渡,它會(huì)創(chuàng)建一個(gè)視圖控制器“?!?,棧底是根視圖控制器。當(dāng)法度榜樣須要在多個(gè)view之間切換的時(shí)刻,可以應(yīng)用UINavigationController。這一話我們要添加一個(gè)導(dǎo)航欄,添加導(dǎo)航控制器須要在初始化的時(shí)刻添加。打開類AppDelegate,會(huì)看到一個(gè)叫application的辦法??吹睫k法體中的注釋如下:
// Override point for customization after application launch.
在個(gè)中添加一個(gè)導(dǎo)航,代碼如下:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { let navController = UINavigationController(rootViewController: ViewController()) self.window?.rootViewController = navController self.window?.makeKeyAndVisible() //設(shè)置可見 return true }
運(yùn)行效不雅如下:
[img]http://img.blog.csdn.net/20150106110658592
膳綾擎的紅框區(qū)域就是一個(gè)導(dǎo)航欄,有一點(diǎn)須要留意,我們?cè)趧?chuàng)建NavigationController時(shí)的參數(shù)為rootViewController:ViewController(),ViewController保存了我們之前設(shè)置的tableView的全部設(shè)計(jì),筆者之前沒留意,在寫rootViewController類型的時(shí)刻寫成了UIViewController,結(jié)不雅運(yùn)行后除了導(dǎo)航欄其他滿是黑的,所以大年夜家必定要留意。
導(dǎo)航欄中都是應(yīng)用導(dǎo)航項(xiàng)(UINavigationItem)實(shí)例來填充的,默認(rèn)情況下場(chǎng)景的導(dǎo)航項(xiàng)包含一個(gè)標(biāo)題和一個(gè)back按鈕。我們須要在ViewController中定義UINavigationItem的內(nèi)容,如今我想給我這個(gè)View取個(gè)名字叫“cgGo”,在ViewController中的viewDidLoad辦法中增長(zhǎng)如下代碼:
self.navigationItem.title = "cgGo"
運(yùn)行結(jié)不雅如圖:
[img]http://img.blog.csdn.net/20150106111708725
如今來試一下點(diǎn)擊某一行跳轉(zhuǎn)到下一頁面,定義一個(gè)控制器,新建文件,類型照樣cocoa touch class,定名為DetailViewController。在點(diǎn)擊的代勞辦法中,把之前彪炳的ActionSheet的代碼注釋掉落,改成如下代碼:
self.navigationController?.pushViewController(DetailViewController(), animated: true)
運(yùn)行后點(diǎn)擊屏幕劃出一個(gè)新的界面:
[img]http://img.blog.csdn.net/20150106113355457
我們看到的┞封個(gè)黑色屏幕就是DetailViewController,在這個(gè)類中進(jìn)行編輯,就可以獲得我們想要的結(jié)不雅,這就請(qǐng)求兩個(gè)頁面間要傳參數(shù),下一話再來解決這個(gè)問題。
相關(guān)案例查看更多
相關(guān)閱讀
- 網(wǎng)站建設(shè)高手
- 網(wǎng)站建設(shè)方法
- 云南做網(wǎng)站
- 花農(nóng)小程序
- 云南網(wǎng)站建設(shè)費(fèi)用
- 高端網(wǎng)站建設(shè)公司
- 前端
- 模版信息
- 云南網(wǎng)絡(luò)營(yíng)銷顧問
- 昆明軟件定制公司
- 網(wǎng)絡(luò)公司
- 云南軟件定制
- 云南軟件設(shè)計(jì)
- 企業(yè)網(wǎng)站
- 網(wǎng)站建設(shè)價(jià)格
- 云南網(wǎng)站建設(shè)首頁
- 昆明做網(wǎng)站
- 汽車報(bào)廢管理系統(tǒng)
- 網(wǎng)站建設(shè)哪家強(qiáng)
- 云南網(wǎng)站開發(fā)
- 日歷組件
- 退款
- 云南網(wǎng)站開發(fā)哪家好
- 微信分銷系統(tǒng)
- 網(wǎng)站建設(shè)專業(yè)品牌
- 海南小程序制作公司
- 模版消息
- 小程序用戶登錄
- 網(wǎng)站建設(shè)案例
- 小程序開發(fā)平臺(tái)前十名