Your SlideShare is downloading. ×
Cocoa勉強会#34-iPhoneでタブバーを非表示に無理矢理する方法
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Cocoa勉強会#34-iPhoneでタブバーを非表示に無理矢理する方法

412
views

Published on

Cocoa勉強会#34 …

Cocoa勉強会#34
2009/5/30
iPhoneでタブバーを非表示に無理矢理する方法
新居雅行

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
412
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. iPhoneでタブバーを非表示 に 無理矢理 する方法 新居雅行 第34回Cocoa勉強会 関東 2009/5/30 2009年5月30日土曜日 1
  • 2. Agenda • • • • 2009年5月30日土曜日 Motivation/なぜそんな事を考えたか Kick Arround/いろいろ試行錯誤 Solution/とにかくできるようにしてみた Wrap-up 2
  • 3. Motivation • こんな要望が出た • • • • • サポートに聞いてみたら… • • • 2画面切り替えを作りたい タブバーがあれば、「切り替え」は簡単かつスムーズ selectedItemプロパティに数字を代入するだけ でも、TabBarは消えて欲しい 『 消すことはお薦めできません。…』 ユーザインタフェースのガイドラインでは常に表示し ておくようにと書かれている だけど、「消す」に相当するプロパティがあるし… 2009年5月30日土曜日 3
  • 4. ナビゲーションの復習 • • • タブバー、ナビゲーションバーがある場合 かつ、ナビゲーションで複数のビューに移動する場合 タブバーのオブジェクトを1つ用意する • • • Interface Builderでどう作る? • • • タブバーにナビゲーションバーを管理させる ナビゲーションバーがビューを移動する(プッシュ) これらは「コントローラーベース」で構築する たぶん、タブバー以外はalloc/initWithFrameという人 が多いかも(確か、サンプルはこれ系だったか?) Interface Builderでの階層をどう作るか? 2009年5月30日土曜日 4
  • 5. ナビゲーションでのクラス構成 UITabBarController UINavigationController UITabBar UITabBarItem UINavigationBar (UIViewController) UINavigationController UITabBarItem UINavigationBar (UIViewController) 2009年5月30日土曜日 5
  • 6. Interface Builderで作るとした らどうするか? 2009年5月30日土曜日 6
  • 7. 試行錯誤 2009年5月30日土曜日 7
  • 8. タブバーは所詮UIViewだろう? • UITabBarはUIViewの派生クラス • • 簡単に消えるだろう? 結果 • • • • 2009年5月30日土曜日 UIViewであれば、hiddenプロパティをYESにすれば なぜか消えない… 高さも変わらない… 透明にしてみたり、あれこれ… とにかく、見え方は常にTabBarそのままである 8
  • 9. いろいろ調べると… • • • UIViewControllerクラス hidesBottomBarWhenPushedプロパティ このプロパティは使えそう • • • • 2009年5月30日土曜日 プッシュしたらTabBarは消せる でも、「プッシュ」しないといけない UINavigationControllerやUINavigationBarにあるメ ソッドでプッシュできる つまり、ナビゲーションバーでのナビゲートするとき に、タブバーを消すという仕組みが用意されている 9
  • 10. そこで考えた • TabBarでナビゲーションした • • • • 2009年5月30日土曜日 あるビューコントローラーがアクティブになる hidesBottomBarWhenPushedプロパティをYESに ビューが表示された直後に、さらに別のビューに NavigationBarのプッシュを利用して移動 つまり、ダミーのビューを表示させ、即座に別の ビューにナビゲートすれば、消せるのではないか? 10
  • 11. つまりこういうこと TabBar FirstDummy FirstView 2009年5月30日土曜日 SecondDummy SecondView 11
  • 12. プロジェクトをチェック! 2009年5月30日土曜日 12
  • 13. それでも残る謎 • • • 2009年5月30日土曜日 ナビゲーションバーを明示的に消す必要があったり なかったり… ナビゲーションバーの表示/非表示の設定はこれで正 しいと言えるのか? 想定外の使い方をしているだけに、文句は言えない かもしれない? 13
  • 14. まとめ • フレームワークの制約をかいくぐるのは大変 • • 2009年5月30日土曜日 られている この方法よりもいい方法はある • • • 言い換えれば、それだけCocoa Touchはよく考えて作 通常は2つのUIViewControllerを切り替える 表示/非表示、あるいはサブビューの入れ替え いいトレーニングになりました… 14
  • 15. 書籍情報など • iPhoneアプリケーションプログラミング • • • etc. • • • • • • • 技術評論社/3200円(税抜) 2009/6/19発売 Amazon.co.jp等で予約受付中 解説+リファレンス 田畑さん、木村さんが査読 鳴海さんがOpenGLサンプル作成 オンラインで閲覧可能 2009年5月30日土曜日 iPhoneアプリが認証情報を提供 Tutoringも 引き続き やっています 黒木さん、手塚さん、村上さんもテスター セミナーは 形式を変えて 続ける予定 15

×