android - programacion - ¿La actividad no se llama terminar?(API 23)
manual de android en pdf (6)
Recibo el siguiente error y no tengo ni idea de por qué está sucediendo.
Error:
08-23 17:07:46.533 22454-22454/com.a.b.c E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.a.b.c, PID: 22454
java.lang.RuntimeException: Unable to resume activity {com.a.b.c/com.a.b.c.MainActivity}: java.lang.IllegalStateException: Activity {com.a.b.c/com.a.b.c.MainActivity} did not call finish() prior to onResume() completing
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3103)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3134)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2481)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.IllegalStateException: Activity {com.a.b.c/com.a.b.c.MainActivity} did not call finish() prior to onResume() completing
at android.app.Activity.performResume(Activity.java:6324)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3092)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3134)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2481)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Código:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
System.out.println("Started");
}
Estoy intentando ejecutar el código en un AVD con Android 6.0 (API 23), funciona en API 22.
Este es un error en la vista previa del desarrollador de Android M. Más detalles
Estoy teniendo el mismo problema, el mismo choque con el
did not call finish() prior to onResume() completing
mensaje de error. Así que creé el v23 / styles.xml
<style name="AppTheme" parent="android:Theme.Translucent">
...
</style>
mientras que el normal styles.xml tiene
<style name="AppTheme" parent="android:Theme.NoDisplay">
...
</style>
Funciona bien, ya no se estrella. Sin embargo, no sé qué tan buena es esta solución para usar Theme.Translucent en API 23, especialmente porque se defined como
Tema para actividades translúcidas (en API nivel 10 e inferior).
Realmente espero que solucionen este error.
He encontrado una solución. Llame a setVisible(true)
en onStart()
:
@Override
protected void onStart() {
super.onStart();
setVisible(true);
}
Intente cambiar targetSdkVersion
a 22 en build.gradle. Theme.NoDisplay
muestra un error en el nivel 23 de la API.
Mi Actividad invisible muestra un diálogo de confirmación. Esto perdió la apariencia del diseño del material cuando usé android:Theme.Translucent.NoTitleBar
.
Por lo tanto, según las respuestas anteriores y el blog de CommonWare y las definiciones de temas de Android, utilizo este estilo, que extiende un tema normal de AppCompat.Light:
<style name="AppTheme.NoDisplay" parent="Theme.AppCompat.Light">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation</item>
<item name="android:windowDisablePreview">true</item>
<item name="android:windowNoTitle">true</item>
</style>
donde android 23> https://www.youtube.com/watch?v=NAcUGwCkrcs
Manifiesto:
android:theme="@android:style/Theme.Translucent.NoTitleBar"
Activity extends from Activity. Not AppCompatActivity.
y para la versión> = 23
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
getWindow().setStatusBarColor(getResources().getColor(android.R.color.transparent))}