私はすべてのUIviewcontrollerの背景色を変更する必要があります。すべてのviewcontrollersの背景色を変更するiphone
0
A
答えて
2
UIViewController
にbackgroundColor
を設定することはできません。その場合は、view
プロパティのみを設定してください。 さて、UIColor
の値をグローバルに設定し、それを設定するときには、それぞれUIViewController
のメソッドに到達し、self.view.backgroundColor
を指定の色に設定します。
4
一つのアプローチは、
(uがしたい場合は...そして、あなたがその通知を呼びかけセレクタで色を変更することができます...色が変更されると通知を発射してのリスナーとしてすべてviewcontrollersを作ることですこの全体のプロシージャを何度も書くのを避けてください。UIViewControllerをサブクラス化するベースビューコントローラを作成し、すべてのViewControllerがこのベースビューコントローラをサブクラス化します...これを行うと、baseviewcontrollerでlistner関数を1回だけ定義する必要があります)助けてください:)
3
ほとんどのアプリビューコントローラは、一度に1つしか表示されません。それがあなたのアプリに当てはまる場合、あなたのVCはビューの背景色を表示する前に設定することができます。
- (void)viewWillAppear:(BOOL)animated {
if (/* the condition that makes me supposed to have a blue background */) {
// I was supposed to be blue already, but nobody can see me yet,
// so everything is cool
self.view.backgroundColor = [UIColor blueColor];
}
}
2
このタスクの最善のアプローチは、共通の美学とロジックを基本クラスにリファクタリングすることです。たとえば、私のプロジェクトのほとんどで、私はBaseViewControllerというクラスを持っています。すべてのUIViewControllerはこの基本クラスから拡張されています。 viewDidAppear
とviewDidLoad
メソッドでは、アプリケーションのすべてのビューに対して適切な設定を完了します。あなたが(必然的に)あなたのアプリケーションの外観を変更したいときは、コードはONEにしかありません!
関連する問題
- 1. 変更背景色
- 2. Iphone UIButton背景色