相关疑难解决方法(0)

如何在活动场景动画过渡期间阻止状态栏和导航栏动画?

首先,我的状态栏背景设置为深棕色,导航栏背景为默认黑色.我正在使用Material light主题.

我正在使用ActivityOptions.makeSceneTransitionAnimation默认转换启动一个新活动,我注意到状态和导航栏都会短暂淡化为白色然后再返回正确的颜色.

根据文件:

要获得转换的完整效果,必须在调用和被调用的活动上启用窗口内容转换.否则,调用活动将开始退出转换,但随后您将看到窗口转换(如缩放或淡入淡出)

我正在使用getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);调用和被调用的活动.

同样,如果我将输入转换更改为幻灯片,状态和导航栏会短暂地具有带白色背景的幻灯片转换.

如何在活动场景动画过渡期间阻止状态栏和导航栏动画?

android android-5.0-lollipop activity-transition shared-element-transition

125
推荐指数
1
解决办法
4万
查看次数

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

我使用来自棒棒糖的新共享元素在两个活动之间实现了图像转换.它正在工作但是在转换过程中我在整个屏幕上都出现了一个奇怪的白色闪烁,我找不到如何摆脱它.这是一个例子: 状态栏也闪烁

以下是第二个活动的启动方式

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());
    }
Run Code Online (Sandbox Code Playgroud)

然后在onCreate:

ViewCompat.setTransitionName(mLogoView, mGame.gameFullId);  
Run Code Online (Sandbox Code Playgroud)

和主题文件:

<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>  
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

android material-design shared-element-transition

52
推荐指数
4
解决办法
3万
查看次数