Note that there are some explanatory texts on larger screens.

plurals
  1. POandroid: swipe left or right to slide views
    text
    copied!<p>I have a list view. On click of an item a detailed view for the item is open. This layout has many widgets like text view, <code>ImageView Buttons</code> etc. Now I want to slide this detail view of the items to show the detail view of next item in the list. Similarly previous item for left to right.</p> <p>I am not able to implement the view sliding I have done how to get the prev / next items in the list. But the actual sliding is the issue </p> <p>I tried gesturedetector like in <a href="https://stackoverflow.com/questions/7198587/android-swipe-left-to-right-and-right-to-left">Android: Swipe left to right and right to left</a> </p> <p>and some other examples. But when I try to slide, there is no effect. I don't see any visual sliding at all.</p> <p>How to fix this?</p> <p>Tried this code but still no slide happening</p> <pre><code> public class ProductActivity extends Activity implements OnGestureListener { @ Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.product_details); setContent(); } private void setContent() { Bundle extras = getIntent().getExtras(); TextView title = (TextView) findViewById(R.id.title); title.setText(extras.getString("Title")); TextView desc = (TextView) findViewById(R.id.desc); desc.setText(extras.getString("Desc")); Button buy = (Button) findViewById(R.id.buy); String priceTag = ("$" + String.format("%.2g", extras.getDouble("Price")) + " Buy Now &gt;&gt;"); buy.setText(priceTag); ImageView image = (ImageView) findViewById(R.id.productimage); Utils.imageLoader.DisplayImage(extras.getString("Image"), image); } private static final int SWIPE_MIN_DISTANCE = 6; // 120; private static final int SWIPE_MAX_OFF_PATH = 125; // 250; private static final int SWIPE_THRESHOLD_VELOCITY = 100; // 200; private GestureDetector gestureScanner; @ Override public boolean onTouchEvent(MotionEvent me) { return gestureScanner.onTouchEvent(me); } // @Override public boolean onDown(MotionEvent e) { // viewA.setText("-" + "DOWN" + "-"); 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) { Toast.makeText(getApplicationContext(), "Left Swipe", Toast.LENGTH_SHORT).show(); } else if (e2.getX() - e1.getX() &gt; SWIPE_MIN_DISTANCE &amp;&amp; Math.abs(velocityX) &gt; SWIPE_THRESHOLD_VELOCITY) { Toast.makeText(getApplicationContext(), "Right Swipe", Toast.LENGTH_SHORT).show(); } else if (e1.getY() - e2.getY() &gt; SWIPE_MIN_DISTANCE &amp;&amp; Math.abs(velocityX) &gt; SWIPE_THRESHOLD_VELOCITY) { Toast.makeText(getApplicationContext(), "Swipe up", Toast.LENGTH_SHORT).show(); } else if (e2.getY() - e1.getY() &gt; SWIPE_MIN_DISTANCE &amp;&amp; Math.abs(velocityX) &gt; SWIPE_THRESHOLD_VELOCITY) { Toast.makeText(getApplicationContext(), "Swipe down", Toast.LENGTH_SHORT).show(); } } catch (Exception e) { // nothing } return true; } @ Override public void onLongPress(MotionEvent e) { Toast mToast = Toast.makeText(getApplicationContext(), "Long Press", Toast.LENGTH_SHORT); mToast.show(); } // @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { // viewA.setText("-" + "SCROLL" + "-"); return true; } // @Override public void onShowPress(MotionEvent e) { // viewA.setText("-" + "SHOW PRESS" + "-"); } // @Override public boolean onSingleTapUp(MotionEvent e) { Toast mToast = Toast.makeText(getApplicationContext(), "Single Tap", Toast.LENGTH_SHORT); mToast.show(); return true; } } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload