次の2つのカスタムUIViewクラスを保持するUIViewControllerクラスがあります。
アイテムビュー
DrawingView
UIViewController ViewDidLoad メソッドには、次のコードがあります。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
item = [[ItemView alloc] initWithFrame:CGRectMake(self.view.frame.size.width/2, self.view.frame.size.height/2, 230, 230)];
item.opaque = NO;
[self.view addSubview:item];
drawing = [[DrawingView alloc] initWithFrame:self.view.frame];
[self.view insertSubview:drawing aboveSubview:item];
[item release];
[drawing release];
}
DrawingView クラスは UITouches を取得し、それに応じて画面に描画します。
私の質問は:
ItemView クラス オブジェクトの上を除いて、画面全体に描画できます。DrawingView クラスは ItemView に描画できません。
別の言葉で説明しましょう:
DrawView クラスは、itemView サブビューの領域を除いて画面上で動作します。itemView の上では、DrawView は何も描画できませんが、itemView 領域以外は描画します。
私に何ができる?何が問題になる可能性がありますか? ViewController クラスの addSubview で追加した itemView 領域を含む全画面に描画するにはどうすればよいですか?
編集:問題をよりよく説明するためにスクリーンショットを追加しています
編集 2: 問題は不透明度に関連していることがわかりました。ItemView クラスでは、追加された UIImageView オブジェクトのアルファ値を 0.5f に変更しました。結果は半透明のビューになり、私の指の描画が見えるようになりました。しかし、これは私が望むものではありません。ビューの上に描画したい。私はアルファ値で遊びたくありません。