SORU
9 Aralık 2010, PERŞEMBE


Android: başlık bir görünüm ExpandableListView eklerken ClassCastException

Böyle bir ExpandableListView için bir başlık eklemek için çalışıyorum

headerView = View.inflate(this, R.layout.header, null);
expandableListView.addHeaderView(headerView);
expandableListView.setAdapter(new SectionedAdapter(this));

Bana aşağıdaki hata verir:

 12-08 16:23:42.354:
 ERROR/AndroidRuntime(421): Caused by:java.lang.ClassCastException: android.widget.LinearLayout$LayoutParams
 12-08 16:23:42.354:   ERROR/AndroidRuntime(421): at android.widget.ListView.clearRecycledState(ListView.java:504)
 12-08 16:23:42.354: ERROR/AndroidRuntime(421): at android.widget.ListView.resetList(ListView.java:490)
 12-08 16:23:42.354:ERROR/AndroidRuntime(421):at android.widget.ListView.setAdapter(ListView.java:422)
 12-08 16:23:42.354:ERROR/AndroidRuntime(421): at android.widget.ExpandableListView.setAdapter(ExpandableListView.java:475)

Bu expandableListView.setAdapter(new SectionedAdapter(this)), çağrı oluyor ama neden olduğunu çözemedim. Herhangi bir fikir?

CEVAP
9 Aralık 2010, PERŞEMBE


Tamam, bunu anladım. Programlama yoluyla böyle bir liste Görünümü LayoutParams için görünümün LayoutParams ayarlayarak çalışma zamanı hatası kurtuldum:

headerView.setLayoutParams(new ListView.LayoutParams(ListView.LayoutParams.FILL_PARENT, ListView.LayoutParams.WRAP_CONTENT));

görünüm eklemeden önce. Bunun sebebi, Android dokümanlar bulundu

http://developer.android.com/reference/android/view/View.html#setLayoutParams(android.view.ViewGroup.LayoutParams)

hangi devletler:

Bu parametreler tedarik üstbu görüş düzenlenmiş nasıl olması gerektiğini belirleme. Çok var ViewGroup alt sınıfları.LayoutParams, ve bu farklı karşılık bu ViewGroup alt onların düzenlenmesi çocuklar.

Eğer başka bir görünüm eklemiş olursunuz yani Kısacası, ebeveyn kullandığı LayoutParams türü için görünümün LayoutParams ayarlamanız GEREKİR, ya da bir çalışma zamanı hatası alırsınız.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BMG Rentals Property Management

    BMG Rentals

    23 Mayıs 2011
  • Gigawipf

    Gigawipf

    18 ŞUBAT 2010
  • Within Temptation

    Within Tempt

    18 EYLÜL 2006