首页 > 解决方案 > Google登录对话框关闭android studio后屏幕闪烁

问题描述

我正面临这个问题,无法找到解决方案。我使用 firebase 在我的应用中实现了 Google 登录。我面临的问题是,每当登录对话框关闭时,屏幕上都会出现一条从上到下的黑条。它移动得非常快,但仍然很明显。我想删除这个横跨屏幕的黑色条带,以便用户顺利返回屏幕。

我试图添加

overridePendingTransition(0, 0);

在 onPause() 和 onResume() 方法中,但仍然没有成功。

任何人都可以帮我找到解决这个问题的方法和/或我怎样才能实现它?

标签: androidfirebasedialoggoogle-signin

解决方案


我有同样的问题,它困扰着我,它看起来不太好。

我找到了解决办法!您可以在其中定义活动打开和关闭动画,styles.xml并将它们分配给使用 启动 google 登录的活动android:windowAnimationStyle。下面是一个使用淡入淡出动画的例子:

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.xmlusing中启动 google 登录流程的应用程序或活动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"
    />

推荐阅读