1

インターネットと Stackoverflow で検索しましたが、この特定の質問に対する回答が見つかりませんでした。これが私の質問です。

両側のタッチイベントに応答する両面を作成しようとしてUIViewいます(UIButton、UISwitchなど)。に 2 つの異なる を追加することで、これを達成しましCALayerCATransformLayer。すべて正常に動作しますが、インターフェイス ビルダーから追加された UI 要素にタッチが応答しません。問題を再現するためUIViewに、nib(frontView) で作成し、インターフェイス ビルダーからすべての ui 要素を追加し、そのUIView参照を追加しCATransformLayerました。タッチ イベントに応答しないことを除いて、すべて正常に動作します。

私はそれを理解しているCALayerか、のようなクラスCATransformLayerから継承していません。そして、このレイヤーをレスポンダーチェーンに持ち込む方法があると思いますが、どうすればよいのでしょうか?. 以下は私の単純化された問題コードです。UIResponderUIView

- (void)viewDidLoad
{
    [super viewDidLoad];

    CATransformLayer *myLayer = [[CATransformLayer alloc] initWithLayer:self.view.layer];
    myLayer.frame = CGRectMake(0, 0, 300, 300);
    [myLayer addSublayer:frontView.layer];//Here 'frontView' is a reference to UIView from nib file
    [self.view.layer addSublayer:myLayer];
}

どんなサポートでも大歓迎です。前もって感謝します。

4

0 に答える 0