1

タップがオブジェクトの境界に入ったときにオブジェクトがメソッドを実行し、タップがその境界を離れたときに別のメソッドを実行するという特定の動作を実現しようとしています。これは言葉にするのが難しいシナリオなので、私は絵を描きました:

タッチドラッグ

これはどのタイプの ControlEvent ですか?存在しない場合、これを機能させる他の受け入れられた方法はありますか?

ありがとう、ジェームズ

4

1 に答える 1

1

私が知っているこれに対する制御イベントはありません。これは自分で実装する必要があります。ビュー コントローラー (ボタンのスーパービュー) に、次のようなメソッドを配置します。

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {    
   // Touches began, check the position of my touch. Is it outside a button? 
   // note that in a BOOL
   ...
}

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    // was my first touch on a button? if not, see if my current touch is inside
    // the button, note that
    ...
}

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
    // Touch is ending, is my touch outside the button and did i cross through earlier?
    // If so, "drag through" event is successful
    ...
}

お役に立てれば

于 2013-08-06T21:44:35.730 に答える