Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Hello this is the running swipe code on listView just as your xml I have placed a ListView with parent LinearLayout in ViewFlipper </p> <pre><code>import android.app.Activity; import android.os.Bundle; import android.view.GestureDetector; import android.view.GestureDetector.SimpleOnGestureListener; import android.view.MotionEvent; import android.view.View; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; import android.widget.ViewFlipper; import android.widget.AdapterView.OnItemClickListener; public class MainActivity extends Activity { private static final int SWIPE_MIN_DISTANCE = 120; private static final int SWIPE_MAX_OFF_PATH = 250; private static final int SWIPE_THRESHOLD_VELOCITY = 200; private GestureDetector gestureDetector; View.OnTouchListener gestureListener; private Animation slideLeftIn; private Animation slideLeftOut; private Animation slideRightIn; private Animation slideRightOut; private ViewFlipper viewFlipper; private ListView lv; private String[] city = { "Indore", "Bhopal", "Khargone", "Ujjain", "Nasik", "Pune", "Delhi", "Mumbai", "Noida", "Hyderabad", "Banglore", "Ajmer", "Goa", "Jaipur", "Nagpur", "" }; private String[] country = { "India", "Bhutan", "Kuwait", "USA", }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_layout); lv = (ListView) findViewById(R.id.List01); ListView lv2 = (ListView) findViewById(R.id.List02); viewFlipper = (ViewFlipper) findViewById(R.id.flipper); slideLeftIn = AnimationUtils.loadAnimation(this, R.anim.slide_left_in); slideLeftOut = AnimationUtils .loadAnimation(this, R.anim.slide_left_out); slideRightIn = AnimationUtils .loadAnimation(this, R.anim.slide_right_in); slideRightOut = AnimationUtils.loadAnimation(this, R.anim.slide_right_out); gestureDetector = new GestureDetector(new MyGestureDetector()); gestureListener = new View.OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { if (gestureDetector.onTouchEvent(event)) { return true; } return false; } }; lv.setAdapter(new ArrayAdapter&lt;String&gt;(this, android.R.layout.simple_list_item_1, city)); lv2.setAdapter(new ArrayAdapter&lt;String&gt;(this, android.R.layout.simple_list_item_1, country)); lv.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView arg0, View view, int position, long id) { // user clicked a list item, make it "selected" Toast.makeText(getBaseContext(), "Item Clicked", Toast.LENGTH_SHORT).show(); // selectedAdapter.setSelectedPosition(position); } }); lv2.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView arg0, View view, int position, long id) { // user clicked a list item, make it "selected" Toast.makeText(getBaseContext(), "Item List2 Clicked", Toast.LENGTH_SHORT).show(); // selectedAdapter.setSelectedPosition(position); } }); } class MyGestureDetector extends SimpleOnGestureListener { @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) { viewFlipper.setInAnimation(slideLeftIn); viewFlipper.setOutAnimation(slideLeftOut); viewFlipper.showNext(); } else if (e2.getX() - e1.getX() &gt; SWIPE_MIN_DISTANCE &amp;&amp; Math.abs(velocityX) &gt; SWIPE_THRESHOLD_VELOCITY) { viewFlipper.setInAnimation(slideRightIn); viewFlipper.setOutAnimation(slideRightOut); viewFlipper.showPrevious(); } } catch (Exception e) { // nothing } return false; } } @Override public boolean onTouchEvent(MotionEvent event) { if (gestureDetector.onTouchEvent(event)) return true; else return false; } } </code></pre> <p>Included the layout(main_layout) that is used.....</p> <pre><code> &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" &gt; &lt;LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" &gt; &lt;Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Do not Click Just swipe on remaining area" /&gt; &lt;/LinearLayout&gt; &lt;ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/flipper" android:layout_width="fill_parent" android:layout_height="fill_parent" &gt; &lt;LinearLayout android:id="@+id/ViewFlipper01" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" &gt; &lt;ListView android:id="@+id/List01" android:layout_width="fill_parent" android:layout_height="wrap_content" &gt; &lt;/ListView&gt; &lt;/LinearLayout&gt; </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