IOS中標簽視圖和Block – iPhone手機開發技術文章 iPhone軟體開發教學課程

標簽視圖控制器 – UITabBarController

自定義UITabBarItem

自定義導航欄和標簽欄背景圖片

三個視圖控制器的綜合使用

一. 標簽視圖控制器 UITabBarController

UITabBarController有以下重要屬性

viewControllers 顯示的視圖控制器

tabBar 標簽欄

delegate 協議

tabBar 是 UITabBar對象, 包含多個UITabBarItem, 每個tanBarItem對應一個viewController. tabBar高度為49

當tabBarItem超過五個時, 系統會自動增加一個更多按鈕,點擊更多按鈕,沒有在底部出現的那些按鈕會以列表形式顯示出來

UIAppearance

如果想通過一鍵設定所有導航視圖控制器的顏色,類似於QQ的一鍵換膚操作, 可以通過UIAppearance協議來進行操作, 通過它可以對一些控件進行自定義顏色等

UITabBarController * tab = [[UITabBarController alloc] init];
    tab.delegate = self;
    [tab setHidesBottomBarWhenPushed:NO];
    
    NSArray * arr = [NSArray arrayWithObjects:nav,nav2,nav3,nav4,nav5,nav6, nil];
    [tab setViewControllers:arr];
    //整個一條的顏色
    [tab.tabBar setBarTintColor:[UIColor whiteColor]];
    //每個圖標的顏色
    [tab.tabBar setTintColor:[UIColor orangeColor]];

總結

UITabBarController是項目開發中常見的佈局樣式,與UINavigationController不同,它的viewController都是並列的,而UINavigationController的則是層次性的

UITabBatController,UINavigationController和UITableViewController,通常都是組合出現,這種佈局方式特別常見,一定要熟練應用

UITabBarController可以嵌套UINavigationController

UINavigationController也可以嵌套UITabBatController

IOS Block用法

在IOS中,定義 用” ^ “來表明block變量, 內容是包含在” {}”中的,並且和C語言一樣,用” ; “來表示語句的結束

int multiplier = 7;

int (^myBlock)(int) = ^(int num){return num * multiplier; };

“^”聲明這是一個block, “myBlock”為變量名

block返回值類型為int類型

類型為int的參數

參數名為”num”

Block註意事項

由於block所創建的變量分為兩個內存區域,分別是全局區和棧區,因此在IOS中如果使用block的成員變量或者屬性時,需要將其copy到堆內存中.

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *