Activity转场动画+背景透明

本文介绍了Android中如何实现Activity的XML动画,详细解释了X轴和Y轴的位置关系,并展示了透明Activity的主题设置。同时,通过overridePendingTransition方法来控制Activity的进出动画,解决透明Activity未按预期动画退出的问题。还提供了anim_in_bottom和anim_out_bottom两个动画资源的使用示例,并提到了在setContentView之前设置Activity尺寸以达到Dialog效果的方法。
摘要由CSDN通过智能技术生成

1、首先介绍一下android的xml动画,X轴与Y轴的位置关系,如下图。

可能有时候图片显示不出来,我再说一下。
X:完全显示是 0%,屏幕右侧出去是 100%,屏幕左侧出去是 -100%。
Y:完全显示是 0%,屏幕下面出去是 100%,屏幕上面出去是 -100%

在这里插入图片描述

2、透明Activit的them

其中window出入动画,与activity出入动画写一个即可。

<style name="Transparent" parent="Theme.AppCompat.NoActionBar">
        <item name="android:windowBackground">@color/transparent</item>
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowAnimationStyle">@style/TransparentAnimationStyle</item>
    </style>

 <!--
    从名为A的activity跳转到B,B也可以跳转到C,其中转场动画设置在B上。
    android:activityOpenEnterAnimation:指的是,进入B时的动画。
    android:activityOpenExitAnimation:指的是进入B时,A的动画,与B的动画是一起显示的。
    android:activityCloseEnterAnimation:通过B跳转到C后,后退到B时,B的进入动画
    android:activityCloseExitAnimation:通过B跳转到C后,后退到B时,C的退出动画
    -->
    <style name="TransparentAnimationStyle" parent
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个安卓使用 XML 写转场动画的示例: 首先,在 res 目录下创建一个新的 XML 文件,例如 transition.xml,然后在其中添加一个 transition 元素,指定转场动画的类型和时长,例如: ```xml <?xml version="1.0" encoding="utf-8"?> <transitionSet xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" android:transitionOrdering="together"> <changeBounds /> <changeTransform /> <changeClipBounds /> <changeImageTransform /> </transitionSet> ``` 在这个示例中,我们使用了一个 transitionSet 元素,它包含了四个子元素,分别是 changeBounds、changeTransform、changeClipBounds 和 changeImageTransform,它们分别表示不同方面的动画效果。 changeBounds 表示在 View 位置和大小发生变化时播放动画,changeTransform 表示在 View 的旋转和缩放发生变化时播放动画,changeClipBounds 表示在 View 的裁剪区域发生变化时播放动画,changeImageTransform 表示在 ImageView 的图像变化时播放动画。 接下来,在你的 Java 代码中,使用 ActivityOptionsCompat 对象指定转场动画的类型和时长,例如: ```java ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation( this ).setDuration(500); ``` 最后,在启动转场动画目标 Activity 时,调用 startActivity() 方法,并传入上面创建的 options 对象,例如: ```java Intent intent = new Intent(this, TargetActivity.class); startActivity(intent, options.toBundle()); ``` 当目标 Activity 启动时,转场动画就会自动播放。 希望这个示例能够帮助你使用 XML 实现自己的转场动画

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值