title: Listview not scrolling inside view flipper in android
body: <p>A view flipper has 4 list views. When i flip the view flipper using gesture listener implemented on view flipper, it works fine. But I am not able to scroll the list view since the touch event is not able to trickle down from view flipper to list view. Please provide solutions.</p>
  
  <pre><code>private class MyViewFlipper extends ViewFlipper implements OnGestureListener {
      GestureDetector gestureScanner = new GestureDetector(this);
      Context context;
  
      public MyViewFlipper(Context context) {
          super(context);
          this.context=context;
      }
  
      @Override
      public boolean onInterceptTouchEvent(MotionEvent event) { 
          return gestureScanner.onTouchEvent(event);
      }
  
      @Override
      public boolean onTouchEvent(MotionEvent event) {  
          return gestureScanner.onTouchEvent(event);
      }
  
      @Override
      public boolean onDown(MotionEvent arg0) {
          return true;
      }
  
      @Override
      public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
          try {
              if (Math.abs(e1.getY() - e2.getY()) &gt; SWIPE_MAX_OFF_PATH) return false;
  
              // right to left swipe
              if (e1.getX() - e2.getX() &gt; SWIPE_MIN_DISTANCE &amp;&amp;
                  Math.abs(velocityX) &gt; SWIPE_THRESHOLD_VELOCITY) {
                  this.setOutAnimation(AnimationUtils.loadAnimation(context,R.anim.push_left_out));
                  this.setInAnimation(AnimationUtils.loadAnimation(context,R.anim.push_left_in));
                  this.showNext();
                  return true;
              } else if (e2.getX() - e1.getX() &gt; SWIPE_MIN_DISTANCE &amp;&amp;
                         Math.abs(velocityX) &gt; SWIPE_THRESHOLD_VELOCITY) {
                  this.setOutAnimation(AnimationUtils.loadAnimation(context,R.anim.push_right_out));
                  this.setInAnimation(AnimationUtils.loadAnimation(context,R.anim.push_right_in));
                  this.showPrevious();
                  return true;
              } else if (e1.getY() - e2.getY() &gt; SWIPE_MIN_DISTANCE &amp;&amp;
                         Math.abs(velocityY) &gt; SWIPE_THRESHOLD_VELOCITY) {
                  return true;
              } else if (e2.getY() - e1.getY() &gt; SWIPE_MIN_DISTANCE &amp;&amp;
                         Math.abs(velocityY) &gt; SWIPE_THRESHOLD_VELOCITY) {
                  return true;
              }
         } catch (Exception e) {
              e.printStackTrace();
              //Toast.makeText(context, "Error Occurred", Toast.LENGTH_LONG);
         }
         return false;
      }
  
      @Override
      public void onLongPress(MotionEvent e) {
  
      }
  
      @Override
      public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
          //I want this event to be handled by list view
          this.getCurrentView().findViewWithTag("hierarchy_list").dispatchTouchEvent(e1);
  
          Log.i(LOG_TAG, "Scroll");
          return false;
      }
  
      @Override
      public void onShowPress(MotionEvent e) {
  
      }
  
      @Override
      public boolean onSingleTapUp(MotionEvent e) {
          //DO something  
          return false;
      }
  }
  </code></pre>