我正面临这个问题,无法找到解决方案。我使用 firebase 在我的应用中实现了 Google 登录。我面临的问题是,每当“登录”对话框关闭时,屏幕上都会出现一条从上到下的黑条。它移动得非常快,但仍然很明显。我想删除这个横跨屏幕的黑色 strip ,以便用户顺利返回屏幕。
我试图添加
overridePendingTransition(0, 0);
在 onPause() 和 onResume() 方法中,但仍然没有成功。
任何人都可以帮我找到解决这个问题的方法和/或我怎样才能实现它?
最佳答案
我有同样的问题,它困扰着我,它看起来不太好。
我找到了解决办法!您可以在 styles.xml
中定义 Activity 打开和关闭动画并将它们分配给使用 android:windowAnimationStyle
启动 google 登录的 Activity .下面是一个使用淡入淡出动画的例子:styles.xml
:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowAnimationStyle">@style/ActivityAnimations</item>
</style>
<style name="ActivityAnimations" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/fade_in</item>
<item name="android:activityOpenExitAnimation">@anim/fade_out</item>
<item name="android:activityCloseEnterAnimation">@anim/fade_in</item>
<item name="android:activityCloseExitAnimation">@anim/fade_out</item>
</style>
风格
AppTheme
分配给 AndroidManifest.xml
中启动 google 登录流程的应用程序或 Activity 使用 android:theme="@style/AppTheme"
.淡入:
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="0.0" android:toAlpha="1.0"
android:duration="500"
/>
消退:
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="1.0" android:toAlpha="0.0"
android:fillAfter="true"
android:duration="500"
/>
关于android - Google登录对话框关闭android studio后屏幕闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56484002/