UITabBarController / App Icon / Asset Catalog について

今回はUITabBarControllerのサンプルコード触ってみた。

f:id:operando:20150719142254p:plain

コレね。

UITabBarControllerについて

このサンプルコードStoryboard駆使しすぎてて、コードを見てもどうやってこのサンプルコードができてるのか理解しにくい。

なので、サンプルコード一度見て自分で一から作りなおすと勉強になると思う。

StoryboardからUITabBarController作ってー、Tabの数増やしてーとかやると、どんな感じで作っていけばいいのか理解できた。

んで、一から作ってみた。追加で色々書いてる。

github.com


UITabBarControllerがどんな感じになっているのかを理解するのに、公式のドキュメント読むとざっくり理解できた。

developer.apple.com


サンプルコードではStoryboardを使ってますが、この記事を参考にしてStoryboardを使わない方法も試してみた。

tech.aainc.co.jp


コードだけ抜き出すと、AppDelegateで以下みたいなことすればできる。Tab内のUIViewControllerはStoryboard使ったけど。

// AppDelegate.swift
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    let tab = UITabBarController()
    
    // StoryboardからUIViewController生成
    var storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
    let f = storyboard.instantiateViewControllerWithIdentifier("Tab1") as! UIViewController
    let s = storyboard.instantiateViewControllerWithIdentifier("Tab2") as! UIViewController

    // Tab作成して追加
    f.tabBarItem = UITabBarItem(title: "item1", image: nil, tag: 0)
    s.tabBarItem = UITabBarItem(title: "item2", image: nil, tag: 1)        

    // UITabBarControllerにTabにするUIViewControllerを設定
    tab.setViewControllers([f,s], animated: true)
    
    self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
    self.window?.rootViewController = tab
    self.window?.makeKeyAndVisible()
    
    return true
}


その他のUITabBarControllerの動作についてはReference読むといいかな。合わせてUITabBarControllerDelegateも読むといいかな。

タブを選択した際にハンドリングはどうやったらいいのか とか実際にアプリ使ってて気になることはわかるはず。

developer.apple.com

developer.apple.com

App Icon

iOSアプリのApp Iconについて、@2xとか@3xつける!程度にしか知らなかったので調べてみた。

とりあえずこの記事だけで基本的なサイズとかは理解できた。iOSも解像度増えたなーという印象(笑)

qiita.com


もっと具体的に知りのにはHuman Interface GuidelinesIcon and Image Designの章を読むといいね。

サイズの話だけじゃなくて、どんなアイコンや画像にしたらいいのか詳しく解説されてるから一度は読むべきかな。

developer.apple.com

Asset Catalog

アイコンや画像について調べていて、管理方法はどうなってるのかな?って疑問に思ったので調べてみた。

どうやらXcode 5からAsset Catalogという仕組みが導入されたらしい。

以下の記事がとても参考になった。Asset Catalogで疑問に思ったことも、Qiitaの記事のほうでほとんど謎解明された!

Asset Catalogってなんぞ?ってことは、参考記事を読んでもらいたい。初心の私には説明難しい・・・。

qiita.com

www.sirochro.com


Asset Catalogができる前は、適当にimageってディレクトリ作ってそこに@2xとかそれぞれのサイズの画像ぶっ込んでた感じなのかなー?という疑問。

あと、ローカライズが難しいみたいでAsset Catalogで完全にOK!!ってことではないみたい。

でも管理するならこれ使った方が便利だし楽そうだから、これから何かアプリ作る際にはAsset Catalog使っていこう。

公式のドキュメントも良さそうだから読んでみよう。

developer.apple.com

まとめ

Xcodeに入っているサンプルコードはほとんど動かした(Game以外)ので、これからは細かいアプリを作っていこうかなーとか考えてる。

一ヶ月くらいでなんか小さいアプリでもいいからリリースできれば、進捗的には最高なんだけどね!

でもリリースすることを目標にしてるわけではないので、作りたいものを地道に作っていこうかと思ってる。

作る過程で得られた知識は随時ブログでOutputしていくから、間違ってたら突っ込んでほしいね。

よし、これからもがんばろー!