Configuración de OnClickListeners para vistas añadidas dinámicamente
Frecuentes
Visto 81 veces
0
Estoy agregando una vista pequeña a un diseño lineal. tengo que aplicar un View.OnClickListener
a él, pero a pesar de que la vista se ha añadido, el onClick
sigue sin disparar. Aquí está mi método
for (Streams stream : streamArray) {
streamCount++;
if (!(streamCount > 3)) {
// ADD AN ITEM
View v = li.inflate(R.layout.stream_item, theLinearLayoutforStreamItems, false);
//SET ONCLICK
v.setOnClickListener(new android.view.View.OnClickListener() {
public void onClick(View v) {
Log.i("onclick", ""+position );
}
});
txtStreamItem = (TextView) v.findViewById(R.id.txtViewStream_item);
txtStreamItem.setText(stream.name);
theLinearLayoutforStreamItems.addView(v);
}
La onClick()
no dispara No sé por qué, y no puedo encontrar nada en Internet al respecto.
2 Respuestas
1
Creo que lo que realmente quieres lograr es:
txtStreamItem.setOnClickListener(new android.view.View.OnClickListener() {
public void onClick(View v) {
Log.i("onclick", ""+position );
}
});
Ponlo justo debajo de esta línea:
txtStreamItem = (TextView) v.findViewById(R.id.txtViewStream_item);
Respondido el 12 de junio de 12 a las 10:06
0
Kit View.setClickable
& focus-able true
.
Respondido el 12 de junio de 12 a las 15:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas java android android-layout dynamic android-widget or haz tu propia pregunta.
Gracias. funcionó. Creo que fue más un problema de lógica que un problema de SDK. - prometheuspk
View v
es un contenedor contieneTextView
, esto es a lo que realmente desea acceder. - Ariefbayu