Czy ktoś może podać mi przykład na dwóch liniach?czy ktoś może podać mi przykład Two_line_list_item w systemie Android?
Odpowiedz
Jeszcze nie znalazłem przykładu, który faktycznie używa wbudowanego układu, android.R.layout.two_line_list_item
i ListView
zamiast ListActivity
. Więc idzie.
Jeśli się spieszysz, poniższe zastąpienie TwoLineArrayAdapter.getView()
jest ważną częścią korzystania z domyślnego układu two_line_list_item
.
Dane
Masz klasę, która określa elementy listy. Zakładam, że masz ich wiele.
public class Employee {
public String name;
public String title;
}
Streszczenie TwoLineArrayAdapter
Ta klasa abstrakcyjna mogą być ponownie wykorzystane, i sprawia, że zdefiniowanie dwuwierszowy ListView
dużo łatwiej później. Możesz można dostarczyć swój własny układ, ale konstruktor dwóch argumentów używa wbudowanego układu two_line_list_item
. Jedynym wymaganiem dotyczącym niestandardowych układów elementów listy jest to, że muszą one używać @android:id/text1
i @android:id/text2
do identyfikowania swoich dzieci TextView
, tak jak robi to .
public abstract class TwoLineArrayAdapter<T> extends ArrayAdapter<T> {
private int mListItemLayoutResId;
public TwoLineArrayAdapter(Context context, T[] ts) {
this(context, android.R.layout.two_line_list_item, ts);
}
public TwoLineArrayAdapter(
Context context,
int listItemLayoutResourceId,
T[] ts) {
super(context, listItemLayoutResourceId, ts);
mListItemLayoutResId = listItemLayoutResourceId;
}
@Override
public android.view.View getView(
int position,
View convertView,
ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater)getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View listItemView = convertView;
if (null == convertView) {
listItemView = inflater.inflate(
mListItemLayoutResId,
parent,
false);
}
// The ListItemLayout must use the standard text item IDs.
TextView lineOneView = (TextView)listItemView.findViewById(
android.R.id.text1);
TextView lineTwoView = (TextView)listItemView.findViewById(
android.R.id.text2);
T t = (T)getItem(position);
lineOneView.setText(lineOneText(t));
lineTwoView.setText(lineTwoText(t));
return listItemView;
}
public abstract String lineOneText(T t);
public abstract String lineTwoText(T t);
}
Konkretny TwoLineArrayAdapter
Wreszcie, oto kod piszesz specyficzne dla danej klasy Employee tak, że będzie to uczynić w ListView
.
public class EmployeeArrayAdapter extends TwoLineArrayAdapter<Employee> {
public EmployeeArrayAdapter(Context context, Employee[] employees) {
super(context, employees);
}
@Override
public String lineOneText(Employee e) {
return e.name;
}
@Override
public String lineTwoText(Employee e) {
return e.title;
}
}
Activity.onCreate()
W onCreate()
metody swoją aktywność użytkownika, masz kod, który wygląda tak:
employees = new Employee[...];
//...populate the employee array...
employeeLV = (ListView)findViewById(R.id.employee_list);
employeeLV.setAdapter(new EmployeeArrayAdapter(this, employees);
niesamowita odpowiedź, dzięki. Mogę zasugerować dodatkowo implementację getDropDownView (int position, View convertView, ViewGroup parent), aby wyglądał poprawnie w tym kontekście. Twoja implementacja może po prostu być: return getView (...) – Keith
- 1. Czy ktoś może podać przykład na React-Redux Jest testowanie?
- 2. Czy ktoś mógłby podać przykład aplikacji node.js?
- 3. Czy ktoś może mi wytłumaczyć ten kod?
- 4. Czy ktoś może mi wyjaśnić MVC?
- 5. Czy ktoś może mi wyjaśnić metody anonimowe?
- 6. Czy ktoś może mi podać przykład, w jaki sposób select() jest powiadamiany, aby fd stał się "gotowy"?
- 7. Co to jest konwersja przechwytywania w Javie i czy ktoś może podać mi przykłady?
- 8. Czy ktoś może podać prosty, ale nie-zabawny przykład gramatyki kontekstowej?
- 9. Czy ktoś może podać przykład wyszukiwania, czytania i zapisywania pliku> 4GB za pomocą doładowania iostreams
- 10. Czy ktoś może podać przykład, jak publikować XML za pomocą HTTParty i Ruby on Rails?
- 11. Czy GHCi może mi podać typ lokalnej funkcji Haskella?
- 12. Czy ktoś może mi wyjaśnić funkcję pack() w PHP?
- 13. Czy ktoś może wyjaśnić mi @MapsId w hibernacji?
- 14. Czy ktoś może mi powiedzieć, dlaczego UIImage.ciimage jest null
- 15. Czy może podać przykład dla EditorForModel z jego parametrami?
- 16. Czy ktoś może mi wyjaśnić, co robi ta metoda GetCardinality?
- 17. Czy ktoś może mi wyjaśnić, jak używać pojemników IOC?
- 18. Czy ktoś może mi wyjaśnić operacje bitowe ARM?
- 19. Czy ktoś może mi wyjaśnić algorytm propagacji wstecznej?
- 20. Czy ktoś może mi wyjaśnić obracające się zaciski?
- 21. Czy ktoś może mi wyjaśnić klasę << jaźń?
- 22. Czy ktoś może mi wytłumaczyć ten kod dekoratora?
- 23. Czy ktoś może wyjaśnić mi ten naprawdę podstawowy kod Pythona?
- 24. Czy ktoś może mi pomóc zrozumieć wątki do mojego programu?
- 25. Czy ktoś może mi powiedzieć, jaki to jest język?
- 26. Czy ktoś może wskazać mi narzędzie do prototypowania winForm?
- 27. Czy ktoś może wyjaśnić mi ten atak php injection injection?
- 28. Czy ktoś może wyjaśnić OAuth?
- 29. Przykład podglądu kamery za pomocą SurfaceTexture w systemie Android
- 30. Czy ktoś może mi powiedzieć, co "fb: admins" nie może zostać przetworzone jako "fbid"?
[tutaj] (http: //mylifewithandroid.blogspot. com/2008/03/my-first-meeting-with-simpleadapter.html) możesz znaleźć przykład. Ten styl zawiera element z dwoma wierszami tekstu, prawdopodobnie z innym formatowaniem. –
To nie jest widok TwoLineListItem, ten samouczek używa prostego ListView. – mudit