iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 27
0
Software Development

挑戰 30天內送審一支APP 系列 第 27

UITabBarController (一) ( D day + 26 )

我想用 Tab bar 來當作我 app的樣板,所以來學習一下

  1. 建立一個新的 single view app ,另外建立兩個分別繼承”UIViewController” 的 .swift 檔 “QRCodeController.swift” , “CameraScannerConvertroller.swift”
  2. 加入標籤需要用到的圖片檔
  3. 移除 “main.storyboard”
  4. <info.plist> -> 刪除 “Main.stroyboard file base name”
    (點擊 “-” 就可以刪除)
  5. 在 < AppDelegate.swift >
    建立一個window並且設定背景顏色
//create a window and setup the background color
        self.window = UIWindow.init(frame:UIScreen.main.bounds)
        self.window?.backgroundColor = UIColor.white
//create mytabBar and setup the background color
        let mytabBar = UITabBarController()
        mytabBar.tabBar.backgroundColor = UIColor.gray
  1. 設定 item 的標題、以及圖示
let mainViewController = ViewController()
        mainViewController.tabBarItem = UITabBarItem(tabBarSystemItem: .favorites, tag: 200)
        
        let qRCodeController = QRCodeController()
        qRCodeController.tabBarItem = UITabBarItem(title: "QR Code", image: UIImage(named:"qrcode"), tag: 200)
        
        let cameraScannerController = CameraScannerController()
        cameraScannerController.tabBarItem = UITabBarItem(title: "數字辨識", image: UIImage(named:"camerascanner"), tag: 200)
  1. 將三個viewcontroller 加到 UITabBarviewcontroller 內,設定起始頁面
myTabBar.viewControllers = [mainViewController,cameraScannerController,qRCodeController]
myTabBar.selectedIndex = 0
  1. 設定試圖控制器和可視化 UIWindow
self.window!.rootViewController = myTabBar
        
        self.window!.makeKeyAndVisible()

載入item的圖檔不可以太大,目前試到 32 pixels 是不會爆掉的最大值


上一篇
UIScrollView (五) ( D Day + 25 )
下一篇
UIImagePickerController and Camera (一) ( D day + 27 )
系列文
挑戰 30天內送審一支APP 30

尚未有邦友留言

立即登入留言