Android 9.0去除Activity跳转动画

有客户要求界面跳转风格要统一,第三方的APP无法控制,所以需要从系统层把Activity跳转动画禁用

frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java

mDisableTransitionAnimation = context.getResources().getBoolean(
                com.android.internal.R.bool.config_disableTransitionAnimation);

 

frameworks/base/services/core/java/com/android/server/wm/AppWindowToken.java

boolean applyAnimationLocked(WindowManager.LayoutParams lp, int transit, boolean enter,
            boolean isVoiceInteraction) {

        if (mService.mDisableTransitionAnimation || !shouldAnimate(transit)) {
            if (DEBUG_APP_TRANSITIONS || DEBUG_ANIM) {
                Slog.v(TAG_WM, "applyAnimation: transition animation is disabled or skipped."
                        + " atoken=" + this);
            }
            cancelAnimation();
            return false;
        }
 

 

frameworks/base/core/res/res/values/config.xml

<bool name="config_disableTransitionAnimation">true</bool>
将属性值改为true,系统取消动画

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android9.0(也称为Android Pie)中,startActivity()方法是用于启动新的Activity的。该方法从当前Activity启动其他Activity,并将控制权传递给目标Activity。 startActivity()方法是Context类的一个成员方法,在Activity中可直接使用。它根据传递给它的Intent参数,决定要启动的目标Activity,并进行相应的处理。 要使用startActivity()方法,首先需要创建一个Intent对象,该对象指定目标Activity的类名或Intent过滤器。然后,通过调用startActivity()方法,并将Intent对象作为参数传递给它,即可启动目标Activity。 示例代码如下: ``` Intent intent = new Intent(CurrentActivity.this, TargetActivity.class); startActivity(intent); ``` 其中,CurrentActivity是当前的Activity的类名,TargetActivity是要启动的目标Activity的类名。 除了启动新的Activity,startActivity()方法还可以用于启动其他应用程序的Activity,只需将目标Activity的包名和类名作为Intent参数,并在Intent中设置相应的标志标识即可。 另外,在Android 9.0中,startActivity()方法还可以接受一个Bundle参数,用于传递额外的数据给目标Activity。通过将Bundle对象与Intent关联,并将Intent作为startActivity()方法的参数传递给它,即可实现数据的传递。 总结起来,Android 9.0中的startActivity()方法是用于启动新的Activity的,并通过传递Intent参数来指定启动的目标Activity。它是Android应用程序中重要的一个核心方法,用于实现界面之间的跳转和数据的传递。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值