Búsqueda / filtrado ListView por varios criterios
Actualmente tengo un diseño con un ListView y un widget EditText. Los objetos del ListView contienen ubicaciones de salida y destinos. El EditText se utiliza para filtrar las ubicaciones de salida. Me gustaría añadir otro widget de EditText para poder filtrar la lista tanto por las ubicaciones de salida como por los destinos. ¿Alguna idea de cómo agregar otra clase de filtro y filtrar el contenido de ListView por las salidas y luego por los destinos?
public class PlacesActivity extends Activity{ private EditText SearchText; private RelativeLayout search; private ImageButton btnSearchClose; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.places_layout); SearchText = (EditText) findViewById(R.id.SearchBox); SearchText.addTextChangedListener(filterTextWatcher); btnSearchClose = (ImageButton)findViewById(R.id.SearchClose); placesListView = (ListView) findViewById(R.id.PlacesListView); } private TextWatcher filterTextWatcher = new TextWatcher() { public void afterTextChanged(Editable s) { adapter.getFilter().filter(s); } private final class MyFilter extends Filter { @Override protected FilterResults performFiltering(CharSequence constraint) { FilterResults oReturn = new FilterResults(); ArrayList<Routes> results = new ArrayList<Routes>(); orig = routes; } if (constraint != null) { if (orig != null && orig.size() > 0) { for (Routes o : orig) { String Constr = constraint.toString(); constraint = Constr.subSequence(0, Constr.length()); String FromRoute = o.getTripFrom().toLowerCase(); if (FromRoute.startsWith((String) constraint)) { results.add(o); } } oReturn.values = results; } } return oReturn; } @Override protected void publishResults(CharSequence constraint, FilterResults results) { ArrayList<Routes> objects = new ArrayList<Routes>(); objects = (ArrayList<Routes>)results.values; routes = objects; notifyDataSetChanged(); } }
- Ordenar la vista de lista con el adaptador de matriz
- Desplazar un ListView por píxeles en Android
- Botón para mostrar el teclado virtual?
- Cómo actualizar SimpleAdapter en Android
- Elementos de lista personalizada que no responden a state_checked en el selector
- Android listview fila eliminación de animación
- Android: mantiene el elemento de ListView resaltado una vez que se ha hecho clic en él.
- ListView setText en una posición determinada
- SetOnItemClickListener VS setOnItemSelectedListener en ListView.
- Obtener el elemento seleccionado de customadapter listview Android
- Adición de animación a un ListView para expandir / contraer contenido
- Android.R.color.transparent no es totalmente transparente
- cómo agregar varias vistas de imagen en la fila de vista de lista con vista de desplazamiento horizontal
Usted necesita escribir su propio BaseAdapter
que se extiende BaseAdapter
. Puede ver cómo un CursorAdapter
(que es un Filterable
pero no admite cambiar / añadir filtros).
- BroadcastReceiver.onReceive se llama dos veces para user_present
- Ninguna actividad encontrada para manejar la intención