溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

UIKit框架(13)標(biāo)簽控制器UITabBarController

發(fā)布時間:2020-08-07 13:58:04 來源:網(wǎng)絡(luò) 閱讀:488 作者:ymanmeng123 欄目:移動開發(fā)
  • 標(biāo)簽控制器UITabBarController介紹

跟UINavigationController類似,UITabBarController也可以輕松地管理多個控制器,輕松完成控制器之間的切換,典型的例子就是QQ、微信等應(yīng)用。

     UIKit框架(13)標(biāo)簽控制器UITabBarController

     底部包含一個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

     UIKit框架(13)標(biāo)簽控制器UITabBarController

右擊UITabBarController為view controllers拖線連接多個子控制器即可。

     UIKit框架(13)標(biāo)簽控制器UITabBarController

設(shè)置后的子控制器,都有一個tabBar,可以選擇自控制器中的tabBarItem進(jìn)行屬性設(shè)置

    UIKit框架(13)標(biāo)簽控制器UITabBarController


  • App主流框架說明

App的主流框架:

     根控制器是UITabBarController,每個子控制器又是UINavigationController

    UIKit框架(13)標(biāo)簽控制器UITabBarController


     子控制器如果是導(dǎo)航控制器,使用導(dǎo)航控制器再進(jìn)行頁面切換時,需要隱藏標(biāo)簽欄

     通過UIViewController的屬性設(shè)置這種行為:(目的控制器)

@property(nonatomic) BOOL hidesBottomBarWhenPushed




向AI問一下細(xì)節(jié)

免責(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)容。

AI