Lista de Android lista completa seleccionada seleccionada
Parece estar teniendo un problema de interfaz de usuario con un listview. Tengo un listview y seleccionando cualquier artículo en la lista, resalta el listview entero. La selección está funcionando bien, obtengo el elemento correcto en el oyente.
Pero el problema es que cuando selecciono cualquier elemento, la lista completa se resalta, por lo que es difícil decir qué fila se seleccionó.
- Android Colores alternativos en ListView
- Obtención de datos de lista de elementos de una lista
- Error con mi lista, ScrollView y botones
- OnItemClickListener y OnTouchListener personalizado
- ¿Cómo obtener los dispositivos bluetooth como una lista?
Esto está funcionando bien en Android> 3.1 – Actualmente estoy probando en un dispositivo 2.3.
<ListView android:id="@+id/myList" android:layout_width="match_parent" android:layout_height="300dp" android:layout_marginTop="@dimen/margin_medium" android:background="@drawable/border" android:listSelector="#99000000" android:scrollbarFadeDuration="1000000" android:scrollbars="vertical" > </ListView>
- Carpeta Java de Java FALLA LA TRANSACCIÓN DE LA CARPETA
- LinearLayour debajo de ListView no está visible
- Para un adaptador ListView, ¿cómo se llama getView ()?
- Cómo puedo tamaño de forma automática listview para que no se desplaza
- Obtención de datos almacenados de la base de datos en ListView.
- La vista de texto no se desplaza dentro de la lista personalizada
- Tratando de filtrar un ListView con runQueryOnBackgroundThread pero no pasa nada - ¿qué me falta?
- Android: deslizar el elemento de la lista causa clickOnItem
Recientemente tuve el mismo problema, pero la razón fue en Android <3.0 bug: si establece un @color como un drawable para su elemento de lista presionó el selector, entonces se llena el área de la lista entera. La solución es usar una "forma" dibujable en lugar de @color.
Por lo tanto, crear un nuevo archivo XML en res/drawable
carpeta con contenido similar:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@color/my_list_item_pressed_color" /> </shape>
Y la referencia creada dibujable en su selector ListView
para state_pressed
(también creada como archivo XML en la carpeta res/drawable
):
<selector xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_pressed="true" android:drawable="@drawable/list_item_pressed_bg" /> <item android:drawable="@android:color/transparent" /> </selector>
Y utilice este selector en su ListView
:
<ListView ..... android:listSelector="@drawable/list_item_selector" />
Eso es todo. Funciona al menos con Android 2.2-2.3.
Si no desea cambiar su selector, también puede configurarlo como el fondo del diseño del elemento de lista, en lugar de hacerlo en el campo listSelector de ListView. Los elementos de la lista reciben el estado "seleccionado" cuando se tocan y el color se muestra correctamente.
Esto funciona para todas las versiones de Android.
Ej: Esta es la disposición de su elemento de lista
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/background_color"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Your text here" /> </LinearLayout>
Y su lista sin selector de lista:
<ListView android:layout_width="fill_parent" android:layout_height="fill_parent" />
Fijé esto quitando esta línea: (no sure porqué trabajó)
Android: listSelector = "# 99000000"
- Android widget actualización período milles no funciona
- Desactivar GoogleAnalytics de la aplicación Android cuando se prueban o desarrollan