Herhangi biri bana iki_line_list_item örneği verebilir mi?herhangi biri bana Android'de Two_line_list_item örneğini sağlayabilir?
cevap
Aslında yerleşik düzen, android.R.layout.two_line_list_item
kullanan bir örnek bulmak için henüz bir ListView
ListActivity
insted. Yani işte gidiyor.
Eğer aceleniz varsa, TwoLineArrayAdapter.getView()
aşağıdaki geçersiz kılma, varsayılan two_line_list_item
mizanpajının kullanılmasının önemli bir parçasıdır.
Veri
Listenizi öğelerini tanımlayan bir sınıf var. Bunların bir dizi var olduğunu varsayacağım.public class Employee {
public String name;
public String title;
}
bir soyut TwoLineArrayAdapter
Bu soyut sınıf yeniden kullanılabilirve daha sonra iki satır ListView
çok daha kolay tanımlama yapar. , kendi düzeninizi sağlayabilirsiniz, ancak iki bağımsız değişken kurucu, yerleşik two_line_list_item
düzenini kullanır. Özel liste öğesi düzenleri için tek gereksinim, two_line_list_item
'un yaptığı gibi TextView
çocuklarını tanımlamak için @android:id/text1
ve @android:id/text2
kullanmalarıdır.
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);
}
beton TwoLineArrayAdapter Nihayet
, işte senin ListView
işleneceğini edeceğiz böylece size Çalışan sınıfına özgü yazma kod.
employees = new Employee[...];
//...populate the employee array...
employeeLV = (ListView)findViewById(R.id.employee_list);
employeeLV.setAdapter(new EmployeeArrayAdapter(this, employees);
Harika cevap, teşekkürler. ek olarak getDropDownView (int position, View convertView, ViewGroup üst bilgisi) uygulamalarını önerebilirim, böylece bu bağlamda doğru şekilde görünecektir. Uygulamanız basitçe şöyle olabilir: getView (...) – Keith
- 1. herhangi biri bana dizisindeki bu
- 2. Herhangi biri bana açıklayabilir Dblink sorgu formatı
- 3. Herhangi biri bana INDIAN NAMES için doğru şekilde çalışan bir SOUNDEX benzeri SQL işlevi sağlayabilir mi?
- 4. Merhaba, bazı biri bana
- 5. Herhangi biri bana fabrika kalıplarını kullanarak wcf istemcisi için genel çerçeve oluşturma hakkında biraz fikir verebilir mi?
- 6. androidde openssl nasıl kurulur
- 7. ActiveMQ mesaj sürekliliği için herhangi biri LevelDB deposunu kullanmış mı?
- 8. Herhangi biri bana WIX'de Windows ortam sistemi değişkenlerini değiştirmeye örnek verebilir mi?
- 9. Tepki yerli androidde Coach işareti nasıl uygulanır?
- 10. NHibernate 3.1 İçindekiler ve Herhangi Biri
- 11. Birisi bana node.js uygulamasının bir örneğini verebilir mi?
- 12. Android Otomatik Yedekleme'nin çalışması için herhangi biri var mı?
- 13. androidde greyview için özel adaptör
- 14. androidde shift-jis kodunu çözme
- 15. Her biri farklı bir PYTHONPATH
- 16. VBA <bunlardan herhangi biri> = <value>?
- 17. Herhangi biri bir forex işlem API'si önerebilir mi?
- 18. Herhangi biri javascript derleyicisine (GWT .. gibi) Pijama (pyjs) python'u kullanır.
- 19. Herhangi biri CACHE'yi nasıl sileceğini biliyor mu? Selenium WebDriver
- 20. Uygulama boyutlarını bilirken androidde özel görünümler ekleme
- 21. C++: soyut bir temel sınıfın herhangi bir örneğini önlemek için herhangi bir yol?
- 22. Bir programın birden çok örneğini nasıl önleyebilirim?
- 23. EMT Modeli örneğini XTend
- 24. Haskell'in atomik IO gerçekleştirmesini sağlayabilir miyim?
- 25. framework, bana
- 26. List.ForEach bana
- 27. iframe'lerden biri çalışmıyor
- 28. ITransportHeartbeat.GetConnections() bağlantıyı koparır bana bağlanır
- 29. Herhangi biri önerebilir: şerit ödemesini laravel 5.2 projesine entegre etmek istiyorum.
- 30. Eloquent Relationship bana geri dönüyor ama bana öznitelikleri vermiyor
[İşte] (http: //mylifewithandroid.blogspot
Activity.onCreate() sizin etkinlik'ın
onCreate()
yöntemde, şuna benzer bir kod olacak. com/2008/03/ilk toplantı-ile-simpleadapter.html) bir örnek bulabilirsiniz. Bu stil, size muhtemelen farklı biçimlendirmelerle iki satırlık metin içeren bir öğe verir. –
İkili bir ListItem görünümü değil, bu öğretici basit bir ListView kullanıyor. – mudit