当前位置: 首页 > 知识库问答 >
问题:

活动之间图像转换的闪烁屏幕

帅煌
2023-03-14

下面是第二个活动是如何启动的

public static void launch(
            @NonNull Activity activity, @NonNull View transitionView, Game game) {
        ActivityOptionsCompat options =
                ActivityOptionsCompat.makeSceneTransitionAnimation(
                        activity, transitionView, game.gameFullId);
        Intent intent = new Intent(activity, ListImportationLoginActivity.class);
        intent.putExtra(INTENT_EXTRA_GAME, retailer);
        ActivityCompat.startActivity(activity, intent, options.toBundle());
    }

然后在onCreate中:

ViewCompat.setTransitionName(mLogoView, mGame.gameFullId);  

和主题文件:

<resources>
    <style name="Theme.MyApp.NoActionBar" parent="Theme.MyApp.NoActionBar.Base">
        <item name="android:windowContentTransitions">true</item>
        <item name="android:windowAllowEnterTransitionOverlap">true</item>
        <item name="android:windowAllowReturnTransitionOverlap">true</item>
        <item name="android:windowSharedElementEnterTransition">@android:transition/move</item>
        <item name="android:windowSharedElementExitTransition">@android:transition/move</item>
    </style>
</resources>  

谢谢你的帮助

共有3个答案

华衡
2023-03-14

您看到的“白色闪烁”是过渡期间两个活动alpha动画传入和传出的结果:当活动A启动活动B时,活动A淡出,活动B淡入。

如果你想防止状态栏和/或导航栏在转换过程中褪色(从而减少“闪烁”效果),你可以看看这篇文章。

施博文
2023-03-14

我通过改变我默认主题的背景色解决了这个问题,希望这仍然可以帮助别人节省时间。

<item name="android:windowBackground">@color/black</item>
<item name="android:colorBackground">@color/black</item>
酆华皓
2023-03-14

在退出活动时,调用getWindow()。setExitTransition(空)

在输入活动中,调用getWindow()。setEnterTransition(空)

它将防止退出活动的淡出和进入活动的淡入,从而消除明显的闪烁效果。

 类似资料:
  • 我在Lollipop上的共享元素转换中看到了奇怪的事情。共享元素在开始动画之前闪烁(请看视频https://www.youtube.com/watch?v=DCoyyC_S-9A) 我不知道为什么会这样。但是,当我添加

  • 我最近一直在练习Java的swing特性,在我的一个扩展JPanel类的类中,我重写了方法,以便它将我的BufferedImage绘制到JPanel上。我也有一个方法在上面移动。在这个问题之前,我有一个问题,显示了移动的过程,因为它重新油漆太快。因此,我创建了一个名为的布尔变量,当图像仍在移动过程中时,该变量被设置为false。但是,现在我看到屏幕把整个图像拿走并放回原处,导致它眨眼。下面是我的基

  • 因此,我正在制作一个游戏,在60秒结束时,我想让屏幕改变颜色并显示一些结束文本。我这样设置计时器: 屏幕上显示的很好,但是当结束屏幕出现时,它会在原来的白色屏幕和结束屏幕之间闪烁。由于某种原因,如果我在屏幕上挥动鼠标,它不会闪烁。 “end”是我的游戏中的文本变量 如果这有帮助的话,这也是我在结尾的部分 有没有一种方法可以使它稳定地出现,而不必更改计时器?

  • 实现屏幕闪烁效果,有点类似拍照闪烁时的flash light。 [Code4App.com]

  • 我显示记分板的代码总是闪烁,因为我将背景设置为白色。但我想让这一切停止。那么,有没有一种方法可以让pygame在不更新显示的情况下完成所有这些绘图和填充,并且当绘图完成时,它会显示新的结果,这样我就不必看到每一步,从而不必闪烁?

  • 我试图改变Libgdx屏幕之间的动画。我想写我的自定义动画(淡入淡出等)。有人能给我个线索吗?我似乎在Libgdx代码中找不到转换的实现。