Android.view.ViewGroup $ LayoutParams no se puede convertir en android.widget.AbsListView $ LayoutParams

Estoy consiguiendo este expcetion:

java.lang.ClassCastException: android.view.ViewGroup$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams at android.widget.ListView.setupChild(ListView.java:1806) at android.widget.ListView.makeAndAddView(ListView.java:1775) at android.widget.ListView.fillDown(ListView.java:672) at android.widget.ListView.fillFromTop(ListView.java:732) at android.widget.ListView.layoutChildren(ListView.java:1625) at android.widget.AbsListView.onLayout(AbsListView.java:1863) at android.view.View.layout(View.java:11278) at android.view.ViewGroup.layout(ViewGroup.java:4224) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1628) at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1486) at android.widget.LinearLayout.onLayout(LinearLayout.java:1399) at android.view.View.layout(View.java:11278) at android.view.ViewGroup.layout(ViewGroup.java:4224) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1628) at android.widget.LinearLayout.layoutHorizontal(LinearLayout.java:1617) at android.widget.LinearLayout.onLayout(LinearLayout.java:1401) at android.view.View.layout(View.java:11278) at android.view.ViewGroup.layout(ViewGroup.java:4224) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1628) at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1486) at android.widget.LinearLayout.onLayout(LinearLayout.java:1399) at android.view.View.layout(View.java:11278) at android.view.ViewGroup.layout(ViewGroup.java:4224) at android.widget.FrameLayout.onLayout(FrameLayout.java:431) at android.view.View.layout(View.java:11278) at android.view.ViewGroup.layout(ViewGroup.java:4224) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1628) at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1486) at android.widget.LinearLayout.onLayout(LinearLayout.java:1399) at android.view.View.layout(View.java:11278) at android.view.ViewGroup.layout(ViewGroup.java:4224) at android.widget.FrameLayout.onLayout(FrameLayout.java:431) at android.view.View.layout(View.java:11278) at android.view.ViewGroup.layout(ViewGroup.java:4224) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1504) at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2458) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4424) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) at dalvik.system.NativeStart.main(Native Method) 

Pero el problema es que no puedo encontrar la raíz del problema. ¿Dónde exactamente y qué significa eso?

Y por qué widget, no tengo ningún widget!

CÓDIGO:

No estoy seguro si aquí:

 public class MyListPreference extends ListPreference { public MyListPreference(Context context) { super(context); } public MyListPreference(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected View onCreateDialogView() { TextView dialogTitle = (TextView)super.onCreateDialogView(); if (dialogTitle != null) { // Dialog dialogTitle.setBackgroundColor(getContext().getResources().getColor(R.color.category_background)); dialogTitle.setPadding(10, 4, 4, 4); // Text dialogTitle.setTextSize(14); dialogTitle.setTypeface(null, Typeface.BOLD); dialogTitle.setTextColor(getContext().getResources().getColor(R.color.actionbar_background)); dialogTitle.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); } return dialogTitle; } } 

 dialogTitle.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); 

Aquí está reemplazando AbsListView.LayoutParams diseño existentes del tipo correcto AbsListView.LayoutParams con AbsListView.LayoutParams más genérico. El tipo de diagramas de diseño es el del contenedor principal de la vista.

Si necesita modificar los parámetros de diseño existentes, acceda a ellos con getLayoutParams() , requestLayout() y llame a requestLayout() para notificar que el diseño ha cambiado.

Ejemplo. En lugar de

 fooView.setLayoutParams(new LayoutParams(123, 456)); 

hacer

 LayoutParams lp = fooView.getLayoutParams(); lp.width = 123; lp.height = 456; fooView.requestLayout(); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.