android过渡动画

示例

从左往右渐入渐出

实现

一 在style文件中新建动画样式

XML 复制代码
    <!-- 定义动画样式 -->
    <style name="FullScreenDialogAnimation">
        <!-- 打开时动画 -->
        <item name="android:windowEnterAnimation">@anim/slide_in_right</item>
        <!-- 关闭时动画 -->
        <item name="android:windowExitAnimation">@anim/slide_out_left</item>
    </style>
XML 复制代码
<!-- slide_out_left.xml -->
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:fromXDelta="0"
        android:toXDelta="100%p"
        android:duration="300" />
</set>
XML 复制代码
<!-- slide_in_right.xml -->
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:fromXDelta="100%p"
        android:toXDelta="0"
        android:duration="300" />
</set>

二 在需要使用的地方调用这个style即可

java 复制代码
Dialog dialog = new Dialog(this, android.R.style.Theme_Black_NoTitleBar_Fullscreen);
dialog.setContentView(R.layout.dialog_fullscreen);

// 设置进入动画
dialog.getWindow().setWindowAnimations(R.style.FullScreenDialogAnimation);

// 显示Dialog
dialog.show();
相关推荐
落日漫游20 分钟前
K8s核心组件全解析
运维·docker·运维开发
一条上岸小咸鱼2 小时前
Kotlin 基本数据类型(一):Numbers
android·前端·kotlin
Huntto2 小时前
最小二乘法计算触摸事件速度
android·最小二乘法·触摸事件·速度估计
一笑的小酒馆3 小时前
Android中使用Compose实现各种样式Dialog
android
红橙Darren3 小时前
手写操作系统 - 编译链接与运行
android·ios·客户端
Demisse3 小时前
[Linux] Linux文件系统基本管理
linux·运维·服务器
BAOYUCompany3 小时前
暴雨服务器:以定制化满足算力需求多样化
运维·服务器
禁默5 小时前
进程替换:从 “改头换面” 到程序加载的底层逻辑
linux·运维·服务器
鹏多多.6 小时前
flutter-使用device_info_plus获取手机设备信息完整指南
android·前端·flutter·ios·数据分析·前端框架
Python私教7 小时前
Docker in Test:用一次性的真实环境,终结“测试永远跑不通”魔咒
运维·docker·容器