Android cómo seleccionar la identificación de autocompletar texto vista dentro de la función anulada onitemclick
-
02-01-2020 - |
Pregunta
yo tengo tres autoCompleteTextView
caja como home
, work
, other
.
Entonces, en el cuadro de autocompletar de inicio, obtengo datos del servidor y selecciono un elemento y ese elemento lo almacené en home_latlong
cadena.De manera similar, tengo que obtener valor de otro trabajo de autocompletar y estoy almacenando ese valor en otra cadena llamada home_latlong
.El siguiente código muestra onItemClick
función anulada donde almacenaré home_latlong
o work_latlong
.
`
ontemClick(AdapterView<?> adapterView, View view,
int position, long id) {
System.out.println("POSITION ="+position);
for (int i = 0; i < latlong.size(); i++) {
if(i==position){
home_latlong=latlong.get(i);
System.out.println("ARRAY"+latlong.get(i));
}
}
}`
Entonces el problema es que no puedo diferenciar cuándo almacenaré home_latlong
y cuando almacenar work_latlong
.Lo intenté con la identificación de autocompletetextview
pero no ayudó en esta función.
Solución
Lo resolví usando una clase interna anónima,
actv1 = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
actv1 .setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View v, int position,
long id) {
// TODO Auto-generated method stub
for (int i = 0; i < latlong.size(); i++) {
if (i == position) {
home_latlong = latlong.get(i);
System.out.println("ARRAY" + latlong.get(i));
}
}
}
});
De manera similar para work_latlong
Tenía otra clase interna anónima para poder obtener en qué vista de autocompletar hice clic.
Otros consejos
Consulta la documentación para AdapterView.OnItemClickListener
:
public abstract void onItemClick (AdapterView<?> parent, View view, int position, long id)
Parámetros
- padre:El AdapterView donde ocurrió el clic.
- vista:La vista dentro de AdapterView en la que se hizo clic (esta será una vista proporcionada por el adaptador)
Necesitas usar el primero parámetro (el AdapterView) para identificar el AutocompleteTextView
.