2011-12-28 31 views
5

Tengo un ListView con contenidos como supongo android en 1ra fila, blackberry en segunda fila y iphone en 3ra fila así que ahora quiero hacer que toda la fila de ListView pueda hacer clic pero cuando hago clic arriba el contenido de la fila vista de lista, entonces sólo realiza evento click, pero quiero si hago clic en cualquier lugar en una fila y luego una acción de clic debe ser un código performed.My puede hacer clic para hacer vista de lista es el siguiente: etiquetacómo hacer que toda la fila se pueda hacer clic en listview android

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.listartistspacedetailview); 

    setListAdapter(new ArrayAdapter(this,R.layout.listitem_layout,R.id.barrio, keywordxmlparsing.array_artistname)); 

} 
@Override 
protected void onListItemClick(ListView l, View v, int position, long thisID) 
{ 
    Intent i = new Intent(Artistspacedetailview.this, Loadingimagetab.class); 
    startActivity(i); 
} 

y ListView en XML el archivo es:

<ListView 
    android:clickable="true" 
    android:layout_marginLeft="10dip" 
    android:layout_marginRight="10dip" 
    android:id="@+id/android:list" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:layout_below="@id/horizontolline" 
    android:cacheColorHint="#00000000" 
    android:drawSelectorOnTop="false" /> 
+4

Su pregunta aún no está clara. Al hacer clic en un elemento de lista, probablemente debería seleccionar el elemento en bruto (debería detectar su evento de clic). No está claro qué problema tiene con eso. – Hiral

+0

Por favor, publique listitem_layout. – Ian

+0

quise decir que cuando hago clic en la lista en una fila, solo se puede hacer clic en la fila de la lista. Otro evento de clic no es fire.even, defino android: clickable = "true" y hago que el ancho de la vista de lista sea "fill parent". – shyam

Respuesta

-2

Esto podría ser útil para usted ...

listView.setOnItemClickListener(new OnItemClickListener() { 
@Override 
public void onItemClick(AdapterView<?> list, View view, int position, long id) { 
      //code to be executed. 
    } 

} 
}); 
8

Sé que esta pregunta es antigua, pero fue el primer éxito para mí en Google cuando estaba buscando este problema.

Esta es mi solución.

<ListView 
    android:id="@+id/XXXXXX" 
    android:layout_width="fill_parent" // Changed from wrap content 
    android:layout_height="fill_parent" // Changed from wrap content 
    android:clickable="true" >   // This was suggested in other topics 
</ListView> 
2

Esto es viejo, pero a cualquier otra persona podría ayudar. Establezca el diseño de inflado para llenar el elemento principal y también establezca en falso cualquier elemento que pueda hacer clic dentro del diseño, de modo que el elemento de la lista pueda obtener todo el enfoque. Además, establezca los elementos en focables falsos y enfocables en On Touch también.

Cuestiones relacionadas