UITabBarController的基本原理及使用(二)

繼續(xù)我們的UITabBarController探索之旅,如果你錯(cuò)過了之前的文章,給你一個(gè)傳送門,建議按順序閱讀。UITabBarController的基本原理及使用(一)

創(chuàng)新互聯(lián)主要業(yè)務(wù)有網(wǎng)站營銷策劃、成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、小程序設(shè)計(jì)、H5網(wǎng)站設(shè)計(jì)、程序開發(fā)等業(yè)務(wù)。一次合作終身朋友,是我們奉行的宗旨;我們不僅僅把客戶當(dāng)客戶,還把客戶視為我們的合作伙伴,在開展業(yè)務(wù)的過程中,公司還積累了豐富的行業(yè)經(jīng)驗(yàn)、成都全網(wǎng)營銷推廣資源和合作伙伴關(guān)系資源,并逐漸建立起規(guī)范的客戶服務(wù)和保障體系。 

繼續(xù)第一回往下講,前面我們已經(jīng)給tabbar添加了2個(gè)子控制器,我們再在這個(gè)基礎(chǔ)上添加2個(gè)子控制器,命名為ThirdViewController和FourthViewController。
UITabBarController的基本原理及使用(二)
創(chuàng)建好控制器記得添加到tabar控制器里面。

添加tabar按鈕

    //設(shè)置tabbar按鈕標(biāo)題
    firstVC.tabBarItem.title = @"微信";
    //設(shè)置tabbar按鈕圖片,圖片可以自行網(wǎng)上搜索,建議32*32大小。
    firstVC.tabBarItem.image = [UIImage imageNamed:@"微信"];
    //設(shè)置tabbar小紅點(diǎn)
    firstVC.tabBarItem.badgeValue = @"10";

設(shè)置好后運(yùn)行一下程序。
UITabBarController的基本原理及使用(二)
是不是有點(diǎn)微信的樣子了?我們繼續(xù)把剩下3個(gè)子控制器按鈕的樣式進(jìn)行設(shè)置。

    //設(shè)置tabbar按鈕標(biāo)題
    firstVC.tabBarItem.title = @"微信";
    secondVC.tabBarItem.title = @"通訊錄";
    thirdVC.tabBarItem.title = @"發(fā)現(xiàn)";   
    fourthVC.tabBarItem.title = @"我";
    //設(shè)置tabbar按鈕圖片
    firstVC.tabBarItem.image = [UIImage imageNamed:@"微信"];
    secondVC.tabBarItem.image = [UIImage imageNamed:@"微信通訊錄"];
    thirdVC.tabBarItem.image = [UIImage imageNamed:@"微信發(fā)現(xiàn)"];
    fourthVC.tabBarItem.image = [UIImage imageNamed:@"微信通訊錄"];
    //設(shè)置tabbar小紅點(diǎn)
    firstVC.tabBarItem.badgeValue = @"10";

運(yùn)行程序觀察效果。
UITabBarController的基本原理及使用(二)

tabbar的四個(gè)子控制器都有了自己的圖標(biāo)樣式。如果你找不到素材源,我提供一個(gè):素材網(wǎng)站
微信圖標(biāo)選中時(shí)會(huì)將圖標(biāo)渲染成綠色,而tabbar系統(tǒng)默認(rèn)的是藍(lán)色,我們需要修改主是顏色。

    //修改主題顏色,注意是對tabbar控制器進(jìn)行修改。
    tabBarViewController.tabBar.tintColor = [UIColor greenColor];

UITabBarController的基本原理及使用(二)
可以看到,選中的圖標(biāo)變成了綠色,不過微信的好像是淺綠色,沒找到他們的配色方案,先用標(biāo)準(zhǔn)綠色代替了。另外,選中的圖標(biāo)也可以設(shè)置成為其它圖標(biāo),大家可以自行嘗試。

//設(shè)置選中圖標(biāo)時(shí)的圖像展示。
firstVC.tabBarItem.selectedImage = [UIImage imageNamed:@"微信通訊錄"];

Storyboard創(chuàng)建UITabBarController
下面,我們通過storyboard的方式來實(shí)現(xiàn)同樣的效果。
UITabBarController的基本原理及使用(二)
Main.storyboard默認(rèn)的控制器是UIViewController,我們先刪除掉。選中Main.storyboard文件,在右側(cè)窗口選擇View Controller Scene,按鍵盤刪除鍵清除默認(rèn)的控制器。
UITabBarController的基本原理及使用(二)
從右側(cè)窗口的控件欄拖入一個(gè)UITabBarController到主界面,并勾選is Initial View Controller。這個(gè)選項(xiàng)的意思是設(shè)置選中的控制器為程序的入口,任何程序必須有且只有一個(gè)入口。
回想一下之前我們是怎么給tabbar添加子控制器的,我們通過代碼建立了4個(gè)控制器并使用addChildViewController方法將4個(gè)控制器設(shè)為tabbar的子控制器。在storyboard里,我們不用寫一行代碼,一個(gè)“拖”字訣走天下。
UITabBarController的基本原理及使用(二)
在右側(cè)控件欄拖入4個(gè)ViewController。
UITabBarController的基本原理及使用(二)
然后選中TabBarController,按住Ctrl鍵的同時(shí)再按住鼠標(biāo)左鍵,拖出一條線指向第一個(gè)ViewController,放開鼠標(biāo)后會(huì)彈出一個(gè)窗口。
UITabBarController的基本原理及使用(二)
選擇圖中所示的view controllers,這就代表指向的ViewController已成為tabbar控制器的第一個(gè)子控制器。
UITabBarController的基本原理及使用(二)
照這個(gè)操作方法,將另外三個(gè)控制器設(shè)置為tabbar的子控制器。
UITabBarController的基本原理及使用(二)
我們可以看到tabbar控制器底部的導(dǎo)航欄已經(jīng)自動(dòng)出現(xiàn)了4個(gè)按鈕,再進(jìn)行一些初始化設(shè)置。
UITabBarController的基本原理及使用(二)
選中一個(gè)子控制器的導(dǎo)航欄,右側(cè)窗口區(qū)會(huì)出現(xiàn)導(dǎo)航欄的部分可設(shè)置屬性,很熟悉對不對,title和image我們前面用代碼實(shí)現(xiàn)的時(shí)候就用到過,請你動(dòng)手設(shè)置一下,看看是否和代碼擁有一樣的效果。

小結(jié)

  1. UITabBarController實(shí)際上就是一個(gè)管理控制器的控制器;
  2. 通過addChildViewController方法添加子控制器;
  3. 存在多個(gè)子控制器的情況下通過selectedIndex屬性設(shè)置哪個(gè)控制器為選擇并顯示的狀態(tài)。
  4. 導(dǎo)航欄默認(rèn)高為64;
  5. tabbar控制器可以在子控制器之間方便的切換(前臺(tái)通過點(diǎn)擊導(dǎo)航按鈕,后臺(tái)使用selectIndex屬性)。

分享標(biāo)題:UITabBarController的基本原理及使用(二)
網(wǎng)站鏈接:http://muchs.cn/article14/jcpege.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、App設(shè)計(jì)、網(wǎng)站內(nèi)鏈、手機(jī)網(wǎng)站建設(shè)、ChatGPT、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名