ClassCastException: android.support.v7.widget.LinearLayoutCompat $ LayoutParams no se puede convertir en android.widget.LinearLayout $ LayoutParams

He creado un diálogo de alerta con diseño personalizado, está funcionando bien, pero cuando intento establecer el elemento de una sola opción para alertDialogBuilder da ClassCastException: android.support.v7.widget.LinearLayoutCompat$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams

  View viewDialog = LayoutInflater.from(this).inflate(R.layout.dialog_verify, null,false); alertDialogBuilder.setView(viewDialog); final TextView tvDialogTitle = (TextView) viewDialog.findViewById(R.id.dialog_textview_title); final Button btnCancel = (Button) viewDialog.findViewById(R.id.dialog_btn_cancel); final Button btnVerify = (Button) viewDialog.findViewById(R.id.dialog_btn_verify); btnCancel.setVisibility(View.GONE); btnVerify.setText("cancel"); btnVerify.setTextColor(ContextCompat.getColor(this, R.color.colorPrimary)); btnVerify.setBackgroundResource(R.drawable.round_white); //set single layout structure alertDialogBuilder.setSingleChoiceItems(arrayReportType, selectedIndex, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { selectedIndex=which; tvReportStatus.setText(arrayReportType[selectedIndex]); dialog.dismiss(); } }); alertDialogBuilder.setCancelable(true); Typeface font_bold = Typeface.createFromAsset(getAssets(), Constants.FONT_BOLD); tvDialogTitle.setTypeface(font_bold); tvDialogTitle.setText("Summary"); final AlertDialog alertDialog = alertDialogBuilder.create(); alertDialog.show(); 

UPDATE: XML FILE desde el que estoy inflando el cuadro de diálogo de alerta

  <TextView android:id="@+id/dialog_textview_title" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="20sp" android:layout_marginBottom="20dp"/> <LinearLayout android:id="@+id/dialog_ll_buttons" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingLeft="15dp" android:paddingRight="15dp"> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1"> <Button android:fontFamily="sans-serif-light" android:id="@+id/dialog_btn_cancel" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_margin="16dp" android:background="@drawable/round_white" android:text="Cancel" android:textAppearance="@style/TextAppearance.AppCompat.Medium" android:textColor="@color/colorAccent" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1"> <Button android:fontFamily="sans-serif-light" android:id="@+id/dialog_btn_verify" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_margin="16dp" android:background="@drawable/round_blue" android:textAppearance="@style/TextAppearance.AppCompat.Medium" android:textColor="@color/white" /> </LinearLayout> </LinearLayout> 

Importación relacionada con la pregunta

 import android.app.TimePickerDialog; import android.content.DialogInterface; import android.graphics.Typeface; import android.os.Bundle; import android.support.design.widget.CoordinatorLayout; import android.support.design.widget.Snackbar; import android.support.v4.content.ContextCompat; import android.support.v7.app.ActionBar; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.text.TextUtils; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.widget.Button; import android.widget.RelativeLayout; import android.widget.TextView; import android.widget.TimePicker; import org.json.JSONException; import org.json.JSONObject; 

ClassCastException

Lanzado para indicar que el código ha intentado emitir un objeto a una subclase de la que no es una instancia.

No

 import android.support.v7.app.AlertDialog; 

HACER

 import android.app.AlertDialog 

NOTA

Usted es la biblioteca cally support.v7 . Llame a la biblioteca nativa .

@ Zordid es correcto. Se trata de un error en AOSP cuando se utiliza la biblioteca de soporte técnico 25. Intente utilizar otra versión de la biblioteca de soporte técnico o espere la corrección. También hay soluciones alternativas publicadas en el problema de AOSP.

Enlace a la edición de AOSP

Hay una nueva versión de soporte de biblioteca 25.4.0 que corrige este problema.

A medida que se acaba de publicar esta biblioteca, asegúrese de que la sección de repositorios incluye una sección maven con el " https://maven.google.com ", por ejemplo

  allprojects { repositories { jcenter() maven { url "https://maven.google.com" } } 

}

  • Android TextView y el botón de lado a lado, ellipsize izquierda TextView
  • ¿Por qué el teclado se superpone en AutoCompleteTextView cuando está dentro de ScrollView?
  • ¿Cómo hacer la pantalla parpadeando / parpadeando desde el servicio de fondo en el dispositivo Android?
  • Android: establece dos parámetros de gravedad mediante programación
  • Disposiciones de Android para varios tamaños de pantalla
  • Haga que los envases de RadioButtons horizontales sean demasiado largos para la pantalla.
  • Cómo hacer el TimePicker más pequeño
  • Anular la disposición xml del marco de android
  • Cómo obtener el número de artículo (posición) de una cadena
  • ¿Por qué mi menú de edición / copia de EditText se encuentra debajo de EditText? ¿Cómo cambiar el orden z de la ventana emergente?
  • Android y la configuración de alfa para (imagen) ver alfa
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.