Chcę utworzyć widok listy podobny pod względem funkcjonalności do aplikacji na Androida Gmaila. Rozumiem przez to, że możesz wybrać wiersze, klikając obraz po lewej stronie lub przeglądając wiadomość e-mail, klikając w dowolnym miejscu w wierszu. Mogę podejść blisko, ale to jeszcze nie koniec.Widok listy w stylu Gmaila
Mój niestandardowy wiersz składa się z widoku obrazu po lewej stronie i niektórych widoków tekstowych po prawej stronie. Oto sedno getView na moim adapterze.
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
View row = super.getView(position, convertView, parent);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getListView().setItemChecked(position, !getListView().isItemChecked(position));
}
});
row.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getActivity(), "" + position, Toast.LENGTH_SHORT).show();
}
});
}
To jest bardzo blisko! Brakuje podświetlenia wiersza w detektorze z kliknięciem wiersza.
Mówisz o 'kontekstowej Menus'? –
Nie. Otwórz aplikację Gmail, jeśli klikniesz po lewej stronie wiersza, wiersz zostanie wybrany. Jeśli klikniesz nigdzie indziej, przejdziesz do widoku szczegółów (zawartość e-maila). – user140550
Czy otrzymujesz animację, która zmienia obraz w pole z tym kodem? Próbuję zrobić to samo, ale nie mogę sobie wyobrazić, że byłoby to tak proste? W celu dokonania wyboru należy ustawić kolor tła obiektu wiersza, gdy wiersz jest faktycznie wybrany, a sam musisz zapisać stany zaznaczenia. Odpowiedź Chanu wydaje się być dokładnie tym, czego potrzebujesz? – 3c71