0

キャンバスとして機能する UIView のサブビューとして、いくつかの UIImageView があります。ImageView はタッチ イベントを受け取るので、それらを移動できます。2 つのビューをパンすると、それぞれの指で 2 つのビューを同時に移動できます。私はそれをしたくありません。

スーパービューで maximumNumberOfTouches プロパティを確認しましたが、そのビューに影響しますが、他の各サブビューがタッチ イベントを受け取ることを妨げません。

この動作を回避する方法はありますか? ありがとう

4

2 に答える 2

1

画像ビューが既に移動しているというフラグを設定し、実際にビューを移動する前にすべてのビューのパン ジェスチャでそのフラグをチェックするのはどうでしょうか? ビューの移動が停止したら、フラグを false に設定するだけです。

于 2012-04-18T12:43:15.750 に答える
0

あなたはこのようにすることができます、カスタムUIViewとしてUIImageViewを拡張してYouImageViewを呼び出すことができます

タッチイベントで

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    for ( UIView *v in self.superview.subviews )
    {
        if ( v != self )
        {
            v.userInteractionEnabled = NO;
        }
    }

}

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
    for ( UIView *v in self.superview.subviews )
    {
        v.userInteractionEnabled = YES;
    }

}

終わり!

于 2012-04-18T14:37:06.407 に答える