@happytar0この広告は、90日以上更新していないブログに表示しています。2013-10-08iOS7対応Objective-C面倒くさがりなのでブログを書く頻度が少なかったのだが、なるべく細かい記事でも書くことにした。iOS7がリリースしてしばらく経つのだが、ようやくひと通りiOS7対応が終わった。後手後手の対応で、アップデートが遅くなってしまいスミマセン。今回はメジャーアップデートということもあり、大幅なUI変更が加わった。流行のフラットUIに変わったことで、iOS6以前と両方サポートするアプリは少し大変かもしれない。ステータスバーが一体化した一番やっかいな問題が、ステータスバーの一体化だ。)出来るようになったため、UINavigationBarなどと違和感なく一体化させることが可能になった。今まではステータスバーを除いた座標から取得出来ていたのだが、iOS7からはステータスバーの20px分が含まれなくなった。このせいでデザインが崩れてしまうアプリがけっこうあると思う。手っ取り早いのは、UIWindowをステータスバー分ずらしてしまうことだ。することでiOS6以前と同じように処理することができる。}UINavigationBarのbarTintColorやtintColorを変更することで、ステータスバーの色も変わる。[キータ]UINavigationBarの戻るが変わった前のビューに戻るときのボタンが「<」みたいなのになった。そのため、backBarButtonItemなどにイメージ付きのUIBarButtonItemを設定すると、「<」分ズレて表示がおかしくなる。僕は手っ取り早く、backBarButtonItemではなく、leftBarButtonItemに設定してしまった。具体的には、UINavigationControllerを派生したクラスを作成し、pushViewControllerをオーバーロードする。その中で、viewControllersをカウントし、0以上の場合(一つ以上ビューがプッシュされている)に、戻るボタンを設定する。以下のようなコードになる。popViewControllerAnimated:YES];}カスタムUIBarButtonItemのアイコン色が反映されないiOS7になってから、ボタンに設定した画像がtinColor(青色とか)で塗りつぶされるようになった。UIBarButtonItem内にUIButtonをカスタムビューとして設定していたのだが、tintColorで塗りつぶされなかった。UIButtonの種類が、UIButtonTypeSystemまたは、UIButtonTypeRoundedRectの場合にのみtinColorで塗りつぶしされるようだ。プログラミングUITableViewのセル背景色が反映されないUITableViewCellの背景色は、デフォルトで白?になったようだ。変更する方法は、tableView:willDisplayCell:forRowAtIndexPath:か、tableView:cellForRowAtIndexPath:のどちらかから、backgroundColorをclearColor(もしくは好きな色)に変更するといい。clearColor];}疲れたのでこのへんで。その1激ニコぷんぷん丸のソースコード公開iOS7対応PHPからCOMを使うタクトスイッチを使う月別アーカイブはてなブログをはじめよう!happytar0さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。