I would like to add a GestureDetector to all views (groups of views) of an activity without manually assigning it to each individual view. Right now onFling () is activated only when scrolling in the background, but not when scrolling for example. button1.
package com.app.example; import android.app.Activity; import android.content.Context; import android.graphics.Color; import android.os.Bundle; import android.util.Log; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.GestureDetector.SimpleOnGestureListener; import android.view.View; import android.view.View.OnTouchListener; import android.widget.Button; import android.widget.LinearLayout; public class ExampleActivity extends Activity { Context mContext = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mContext = this; LinearLayout parent = new LinearLayout(mContext); parent.setOrientation(LinearLayout.VERTICAL); parent.setBackgroundColor(Color.RED); Button button1 = new Button(mContext); button1.setText("Button 1"); Button button2 = new Button(mContext); button2.setText("Button 2"); parent.addView(button1); parent.addView(button2); final GestureDetector gestureDetector = new GestureDetector( new MyGestureDetector()); parent.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { gestureDetector.onTouchEvent(event); return true; } }); setContentView(parent); } } class MyGestureDetector extends SimpleOnGestureListener { @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
android gesturedetector viewgroup onfling
Paradiesstaub
source share