OnItemClickListener y OnTouchListener personalizado
Tengo una lista de vistas en una vista de lista en la que me gustaría hacer clic y hacer que se active el OnItemClickListener. Aunque al mismo tiempo quiero poder deslizar cada vista y tener una acción personalizada. Esto significa que tuve que crear nuestro propio OnTouchEvent para cada vista cuando se hace en el ArrayAdapter.
¿Hay una manera de tener ambos de los que trabajan juntos, para que pueda tener una acción personalizada, como pasar un artículo y hacer clic en el tema se producen fácilmente
- Android listview, pase a la acción
- ListView en la ficha de desplazamiento no se actualiza a menos que se reinicie
- Twitter para Android como menú rápido de desplazamiento rápido
- Android ListView Deslizar hacia la derecha y hacia la izquierda para aceptar y rechazar
- Implementación de 47degree android-swipelistview para desplazar android ListViewItem
- Android PagerView entre las actividades
- Cómo desplazarse y desplazarse hasta el último en Appium
- Vista de desplazamiento de Android?
- Android ViewFlipper + Detector de gestos
- No se puede implantar OnItemClickListener en android-swipelistview
- Biblioteca avanzada de RecyclerView - ejemplos de código
- Deslizar entre las actividades de android
- Cierre una actividad pasando de derecha a izquierda con una animación suave para ir a la segunda actividad
Esto es muy similar a cómo se manejan las actividades recientes de Android. Ya sabes, muestran una lista de todas las aplicaciones abiertas recientemente, pueden borrarse para quitarlas o hacer clic para abrirlas. Echa un vistazo a su código, creo que tendrás una buena idea: https://github.com/android/platform_frameworks_base/tree/master/packages/SystemUI/src/com/android/systemui/recent
Tu clase puede implementar tanto View.OnTouchListener, AdapterView.OnItemClickListener
@Override public boolean onTouch(View view, MotionEvent motionEvent) { if(motionEvent.getAction() == MotionEvent.ACTION_UP){ Log.d(TAG, "ontouch: UP"); **// Here you can figure if it was simple item click event. // We return false only when user touched once on the view. // this will be handled by onItemClick listener.** if(lastAction == -1){ lastAction = MotionEvent.ACTION_UP; view.clearFocus(); return true; } return false; } else if(motionEvent.getAction() == MotionEvent.ACTION_DOWN){ Log.d(TAG, "ontouch: DOWN"); return false; } else { // This is all action events. lastAction = -1; return true; } } @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // We come here after onTouch event figured out that its a simple touch event and needs to be handled here. }
- Holo tema – tamaño de texto diferente en EditText y Spinner
- Analizar galleta que no tiene signo igual (=)