Ho inizialmente posto il mio problema su stackoverflow dove non ho trovato aiuto.
Io ho questo adapter per la mia applicazione per le note che vengono salvate in un sql.
Ora sto integrando una barra di ricerca per filtrare le note,non so come fare.
il progetto lo potete trovare anche qua:
https://github.com/Heromine/Service-Notes
il mio adapter:
codice:public classNotesAdapterextendsBaseAdapter{ privatestaticfinalString DATABASE_TABLE ="notes_schema-v%s.sql"; privateSQLiteDatabase mDb; privateArrayList<NotesAdapter.NoteViewWrapper> notesData; publicContext context; publicstaticclassNoteViewWrapper{ privatefinalNote note; privateboolean isSelected; publicNoteViewWrapper(Note note){ this.note = note; } publicNote getNote(){ return note; } publicvoid setSelected(boolean isSelected){ this.isSelected = isSelected; } } privatestaticfinalDateFormat DATETIME_FORMAT =DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM); privatefinalList<NoteViewWrapper> data; publicNotesAdapter(List<NoteViewWrapper> data){ this.data = data; } @Override publicint getCount(){ return data.size(); } @Override publicNoteViewWrapper getItem(int position){ return data.get(position); } @Override publiclong getItemId(int position){ return position; } @Override publicView getView(int position,View convertView,ViewGroup parent){ ViewHolder holder; if(convertView ==null){// inflar componente visual convertView =LayoutInflater.from(parent.getContext()).inflate(R.layout.notes_row, parent,false); holder =newViewHolder(convertView); convertView.setTag(holder); }else holder =(ViewHolder) convertView.getTag(); NoteViewWrapper noteViewWrapper = data.get(position); holder.noteIdText.setText(String.valueOf(noteViewWrapper.note.getId())); holder.noteTitleText.setText(noteViewWrapper.note.getTitle()); holder.noteContentText.setText(noteViewWrapper.note.getContent().length()>=80? noteViewWrapper.note.getContent().substring(0,80).concat("..."): noteViewWrapper.note.getContent()); holder.noteDateText.setText(DATETIME_FORMAT.format(noteViewWrapper.note.getUpdatedAt())); if(noteViewWrapper.isSelected){ CardView cardsView =(CardView) convertView.findViewById(R.id.note_cardboard); cardsView.setCardBackgroundColor(Color.parseColor("#cacaca")); }else{ CardView cardsView =(CardView) convertView.findViewById(R.id.note_cardboard); cardsView.setCardBackgroundColor(Color.WHITE); } return convertView; }
Per favore aiutatemi! sono nel panico più totale anche dopo che su stackoverflow nessuno mi ha risposto...

Rispondi quotando
