アプリのすべての画面に共通の色合いがあります。背景ではありません。画面全体を埋めるパターンであり、すべてのビューの一番上にあります。同じ画面内で、あるビューから別のビューへのパターンの流れを連続的に見ることができます。また、他の要素を覆い隠したり、イベント処理に参加したりすることもありません。
ViewController でこのコードを使用して実装してみました。
UIColor* texture = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Texture.png"]];
UIView* tintView = [[UIView alloc] initWithFrame:self.view.bounds];
[tintView setBackgroundColor:texture];
[tintView setAlpha:0.5];
[self.view addSubview:tintView];
しかし、その背後にある景色には触れません。
tintView
イベント処理に参加しないでください。むしろ、その背後にある他の要素が、通常どおりにイベントを処理できるようにする必要があります。
それを行う他の方法は、これをview
UIViewController のプロパティの背景として設定し、他のすべてのサブビューに共通のアルファを設定して、view
背後にあるパターンを表示することです。それはほとんどの点で冗長になります。
これを行うより良い方法はありますか?