Copyright (C) iPhoneアプリ開発備忘録 All rights reserved.
ブログ内で記したコード、内容の正確性は保証いたしません。
記載内容を実装したことにより発生した不具合・損害等の責任は一切負いません。



2015年02月13日

iOS7でTabBarを一時的に見えないようにすると、回復したときにTabBarのBackgroudColorが透過されてしまう現象を防ぐ方法



Xcode6でiOS7向けビルドをしたときに、iOS7でアプリを動作させているとき、NavigationControllerで次の画面をpushして遷移させるとき、
NextViewController.hidesBottomBarWhenPushed = YES;
と記述してTabBarを一時的に隠すと、popして画面を戻ったときに TabBarが透過属性となり、下層のViewが見えてしまう。

これを防ぐための方法。

遷移先の画面で、画面を戻るときにTabBarのtintColorを設定する。

- (void)didMoveToParentViewController:(UIViewController *)parent
{
if (![parent isEqual:self.parentViewController]) {
[[UITabBar appearance] setBarTintColor:[UIColor colorWithRed:1.0f green: 1.0f blue:1.0f alpha:1.0f]]; // white
}
}

なお、iOS8では本現象は発生しない。

参考記事:
http://qiita.com/yimajo/items/d9409d83fecf9875061d

posted by mobileDeveloper at 20:21 | Comment(0) | TrackBack(0) | 開発の流れ はてなブックマーク - iOS7でTabBarを一時的に見えないようにすると、回復したときにTabBarのBackgroudColorが透過されてしまう現象を防ぐ方法 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
Apple、Appleのロゴ、App Store、iPodのロゴ、iTunesは、米国および他国のApple Inc.の登録商標です。
iPhone、iPod touch、iPadはApple Inc.の商標です。
iPhone商標は、アイホン株式会社のライセンスに基づき使用されています。
その他、本ブログに記載されている製品名、会社名は、それぞれ各社の商標または登録商標です。