このコードについていくつか質問したいと思います。私は助けを必要とし、newbostonのジェスチャー
質問してください:
彼らはなぜ、これが私がこの
のようなインタフェースを参照してください初めてであるこのよう
GestureDetector.OnGestureListener,GestureDetector.OnDoubleTapListener
ジェスチャ検出器インタフェースを実装するのです3210
なぜそれらを初期化するのですか?インターフェイスからの拒否?
匿名クラスを使用する場合にのみ実行できますか?
なぜ(ジェスチャ検出器)の代わりに(ジェスチャ検出器コンパクト)を使用しましたか?
(this)キーワードが何であるかを理解できません。
誰も私にそれを説明できますか? (this)キーワードを使用せずにオブジェクトを初期化する方法は?も、このコード行は、
myGesture.setOnDoubleTapListener(this);
私はその存在の意義を理解することはできません
コード:
public class MainActivity extends AppCompatActivity implements GestureDetector.OnGestureListener,GestureDetector.OnDoubleTapListener {
private TextView textView1;
private GestureDetectorCompat myGesture;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView1= (TextView) findViewById(R.id.textView1);
myGesture=new GestureDetectorCompat(this,this);
myGesture.setOnDoubleTapListener(this);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
return this.myGesture.onTouchEvent(event);
}
@Override
public boolean onSingleTapConfirmed(MotionEvent motionEvent) {
textView1.setText(" onSingleTapConfirmed");
return true;
}
@Override
public boolean onDoubleTap(MotionEvent motionEvent) {
textView1.setText("onDoubleTap");
return true;
}
@Override
public boolean onDoubleTapEvent(MotionEvent motionEvent) {
textView1.setText("onDoubleTapEvent");
return true;
}
@Override
public boolean onDown(MotionEvent motionEvent) {
textView1.setText("onDown");
return true;
}
@Override
public void onShowPress(MotionEvent motionEvent) {
textView1.setText("onShowPress");
}
@Override
public boolean onSingleTapUp(MotionEvent motionEvent) {
textView1.setText(" onSingleTapUp");
return true;
}
@Override
public boolean onScroll(MotionEvent motionEvent, MotionEvent motionEvent1, float v, float v1) {
textView1.setText(" onScroll");
return true;
}
@Override
public void onLongPress(MotionEvent motionEvent) {
textView1.setText(" onLongPress");
}
@Override
public boolean onFling(MotionEvent motionEvent, MotionEvent motionEvent1, float v, float v1) {
textView1.setText("onFling");
return true;
}
}
が、私はこれらの質問について検索し、私は」didnの便利なものは何も見つかりません。
誰でも私を説明できますか?
これらの方法に関する文書をお読みになりましたか?クラスはGestureDetectorの2つのインターフェースを実装していますが、どうしたのですか?コードは、匿名クラスの代わりに 'this'を使ったほうがはるかに洗練されています –
どちらを読むか、混乱しているドキュメントは分かりません。 –
使用されているクラスを見てください。メソッドのパラメータと説明を読んでください。それはJavaDocだけなので、Javaを理解すれば、どのような方法で何ができるかを学ぶことができます。 https://developer.android.com/reference/android/support/v4/view/GestureDetectorCompat.html –