意図的に、部分的に重なるビュー コンテナー内に 2 つのビュー (テーブル ビュー) を配置しました。ビュー B は、ビュー A の約 50% に重なっています。
プログラムでビュー B を移動してオーバーラップしないようにすると、ビュー A 内の以前にオーバーラップしていた領域がタッチ イベントに応答しません。つまり、50% までは応答しません。元々オーバーラップしていなかった領域のみがオーバーラップします。さらに、ビュー B 内で、スーパービュー内の新しいスペースを現在占有している部分はタッチ イベントに応答せず、たまたま古い領域を占有するビューの部分のみが応答します。
ビューを移動するために使用しているコードは単純です。
UIView* viewB = [self.childViewControllers.lastObject view];
CGRect rect = viewB.frame;
rect.origin.x += 200;
[UIView animateWithDuration:0.2 animations:^{
viewB.frame = rect;
}];
視覚的には、ビューは移動しますが、タッチ領域は移動しません。
最初にビューを配置するために、iOS 6 内の新しいストーリーボード「コンテナー ビュー」メカニズムを使用しました。
なぜこれが起こっているのか分かりません。何か案は?
ありがとう。