

UITabBarControllerにてタブにカスタムアイコンを表示させたいのですが、  
このタブのアイコンをカスタマイズさせる方法といえば、Apple規定のUITabBarControllerを元として設定した、画像を線画のように切り抜いた形で表示させるものだと思います。

また背景の画像をカスタムする、という方法も、Apple規定のUITabBarControllerを基盤として背景の画像を変えるものだけでした。  
サイズも同様に、Storyboard内では変更できないみたいです。

UITabBarController自体(ないしはアイコン自体)のサイズをカスタマイズし、かつ自分で作成したカラーのついたImageのものに変更し、実装したいのですが、これはXcode内で実装できるようなものなのでしょうか？


CC BY-SA 3.0
2015-02-02T14:33:56.730
5797
2016-10-20T08:58:18.267
2015-02-03T03:57:41.190
5832
5832
question
xcode storyboard
UITabBarControllerのアイコンのカスタマイズやサイズ変更について


> UITabBarControllerにてタブにカスタムアイコンを表示させたい

というアプローチは正しくありません。アプローチの相手は、View Controllerのほうです。  
Storyboard上で、View Controllerのタブバーにあるアイコンをクリックすると、下図のAttributed Inspectorになります。

![画像の説明をここに入力](https://i.stack.imgur.com/BCFwC.png)

System
Itemを「Custom」にし、Imageを任意の画像に指定します。画像は「線画」である必要はなく、一辺32ピクセル以下のビットマップ画像でも可です。

プログラムでTabbar ControllerにView
Controllerを追加するとき、アイコンを指定するには、このようにします。（このサンプルコードは、任意のView
Controllerクラスに記述するものとします。）

[code]

    let thirdViewController = UIViewController()
    thirdViewController.view.backgroundColor = UIColor.yellowColor() // View Controllerのカスタマイズ
    thirdViewController.tabBarItem.image = UIImage(named: "third.png") // ファイル名は任意に。
    var viewcontrollers = self.tabBarController?.viewControllers
    viewcontrollers?.append(thirdViewController)
    self.tabBarController?.setViewControllers(viewcontrollers!, animated: true)
    
[/code]

このように、タブバーアイコンの設定の対象は、UITabBarControllerではなく、UIViewControllerであることが、おわかりになると思います。


CC BY-SA 3.0
2015-02-03T00:50:03.287
5813
2015-02-03T02:34:30.390
2015-02-03T02:34:30.390
7362
7362
5797
answer