您好,登錄后才能下訂單哦!
標(biāo)簽控制器UITabBarController介紹
跟UINavigationController類似,UITabBarController也可以輕松地管理多個控制器,輕松完成控制器之間的切換,典型的例子就是QQ、微信等應(yīng)用。
底部包含一個UITabBar標(biāo)簽欄,點(diǎn)擊標(biāo)簽欄上的按鈕實(shí)現(xiàn)頁面的切換
代碼使用UITabBarController
UITabBarController包含一個控制器數(shù)組:
@property(nonatomic, copy) NSArray *viewControllers
通過該屬性設(shè)置管理的所有控制器頁面,同時在標(biāo)簽欄上設(shè)置對應(yīng)的切換按鈕
如:
UITabBarController * tbc = [[UITabBarController alloct] init]; self.window.rootViewController = tbc; UIViewController * vc1 = [[UIViewController alloc] init]; vc1.view.backgroundColor = [UIColor redColor]; UIViewController * vc2 = [[UIViewController alloc] init]; vc1.view.backgroundColor = [UIColor yelloColor]; UIViewController * vc3 = [[UIViewController alloc] init]; vc1.view.backgroundColor = [UIColor blueColor]; tbc.viewControllers = @[vc1, vc2, vc3];
UITabBarController包含一個標(biāo)簽欄UITabBar:
@property(nonatomic, readonly) UITabBar *tabBar
和導(dǎo)航控制器類似,標(biāo)簽控制器包含數(shù)據(jù)條目數(shù)組:
@property(nonatomic, copy) NSArray *items
條目為UITabBarItem
@property(nonatomic, retain) UITabBarItem *tabBarItem
UITabBarItem的屬性有:
@property(nonatomic, retain) UIImage *p_w_picpath @property(nonatomic, copy) NSString *title @property(nonatomic, retain) UIImage *selectedImage @property(nonatomic, copy) NSString *badgeValue
UIViewController的tabBarController屬性能夠訪問所屬的標(biāo)簽控制器:
@property(nonatomic, readonly, retain) UITabBarController *tabBarController
控制器頁面的切換方式:
1)用戶觸摸標(biāo)簽欄上對應(yīng)切換按鈕,能夠自動切換到對應(yīng)的控制器頁面
2)也可以通過UITabBarController的selectedIndex進(jìn)行切換
@property(nonatomic) NSUInteger selectedIndex
storyboard使用UITabBarController
右擊UITabBarController為view controllers拖線連接多個子控制器即可。
設(shè)置后的子控制器,都有一個tabBar,可以選擇自控制器中的tabBarItem進(jìn)行屬性設(shè)置
App主流框架說明
App的主流框架:
根控制器是UITabBarController,每個子控制器又是UINavigationController
子控制器如果是導(dǎo)航控制器,使用導(dǎo)航控制器再進(jìn)行頁面切換時,需要隱藏標(biāo)簽欄
通過UIViewController的屬性設(shè)置這種行為:(目的控制器)
@property(nonatomic) BOOL hidesBottomBarWhenPushed
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。