Android 实现布局的缩小和再放大动画(使用scale动画效果进行实现)

简介: Android 实现布局的缩小和再放大动画(使用scale动画效果进行实现)

前言:

这里我们使用scale标签进行实现,scale是Android的尺寸缩放动画,继承自基类Animation

一、首先在res目录上,右键new 选择Android Resource File 之后进行如下操作

创建布局anim_small.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:fillAfter="false">
    <!-- Scale是Android的尺寸缩放动画,继承自基类Animation -->
    <scale
        android:duration="150"
        android:fromXScale="1"
        android:fromYScale="1"
        android:pivotX="50%"
        android:pivotY="50%"
        android:toXScale="0.8"
        android:toYScale="0.8" />
    <scale
        android:duration="150"
        android:fromXScale="1"
        android:fromYScale="1"
        android:pivotX="50%"
        android:pivotY="50%"
        android:startOffset="150"
        android:toXScale="1.2"
        android:toYScale="1.2" />
</set>

分析scale标签中的具体属性:

  1. android:duration=“150” 动画持续时间,毫秒为单位
  2. android:fromXScale=“1” 起始x尺寸比例
  3. android:fromYScale=“1” 起始y尺寸比例
  4. android:pivotX=“50%”
    缩放起点x轴坐标,取值可以是数值(50)、百分数(50%)、百
    分数p(50%p),当取值为数值时,缩放起点为View左上角坐标
    加具体数值像素,当取值为百分数时,表示在当前View左上角坐标
    加上View宽度的具体百分比,当取值为百分数p时,表示在View
    左上角坐标加上父控件宽度的具体百分比
  5. android:pivotY=“50%” 同上
  6. android:startOffset=“150” 设置动画执行之前等待的时间
  7. android:toXScale=“0.8” 最终x尺寸比例
  8. android:toYScale=“0.8” 最终y尺寸比例
  9. android:fillAfter="false"动画结束时,停留在第一帧 换句话说 就是恢复原来的初始效果。

之后我们就可以在想要设置的布局或指定的控件中进行设置了,这里我以设置按钮为例:点击按钮 按钮会先变小 后恢复原样

只需两行代码就可以搞定

@SuppressLint("ResourceType") 
Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.anim_small);
btn_commit.startAnimation(animation);


目录
相关文章
|
1月前
|
ARouter Android开发
Android不同module布局文件重名被覆盖
Android不同module布局文件重名被覆盖
|
3月前
|
存储 Shell Android开发
基于Android P,自定义Android开机动画的方法
本文详细介绍了基于Android P系统自定义开机动画的步骤,包括动画文件结构、脚本编写、ZIP打包方法以及如何将自定义动画集成到AOSP源码中。
76 2
基于Android P,自定义Android开机动画的方法
|
3月前
|
移动开发 监控 前端开发
构建高效Android应用:从优化布局到提升性能
【7月更文挑战第60天】在移动开发领域,一个流畅且响应迅速的应用程序是用户留存的关键。针对Android平台,开发者面临的挑战包括多样化的设备兼容性和性能优化。本文将深入探讨如何通过改进布局设计、内存管理和多线程处理来构建高效的Android应用。我们将剖析布局优化的细节,并讨论最新的Android性能提升策略,以帮助开发者创建更快速、更流畅的用户体验。
66 10
|
21天前
|
Android开发 UED
Android 中加载 Gif 动画
【10月更文挑战第20天】加载 Gif 动画是 Android 开发中的一项重要技能。通过使用第三方库或自定义实现,可以方便地在应用中展示生动的 Gif 动画。在实际应用中,需要根据具体情况进行合理选择和优化,以确保用户体验和性能的平衡。可以通过不断的实践和探索,进一步掌握在 Android 中加载 Gif 动画的技巧和方法,为开发高质量的 Android 应用提供支持。
|
1月前
|
ARouter Android开发
Android不同module布局文件重名被覆盖
Android不同module布局文件重名被覆盖
109 0
|
3月前
|
编解码 Android开发
【Android Studio】使用UI工具绘制,ConstraintLayout 限制性布局,快速上手
本文介绍了Android Studio中使用ConstraintLayout布局的方法,通过创建布局文件、设置控件约束等步骤,快速上手UI设计,并提供了一个TV Launcher界面布局的绘制示例。
55 1
|
3月前
|
XML 数据可视化 API
Android经典实战之约束布局ConstraintLayout的实用技巧和经验
ConstraintLayout是Android中一款强大的布局管理器,它通过视图间的约束轻松创建复杂灵活的界面。相较于传统布局,它提供更高灵活性与性能。基本用法涉及XML定义约束,如视图与父布局对齐。此外,它支持百分比尺寸、偏移量控制等高级功能,并配有ConstraintSet和编辑器辅助设计。合理运用可显著提高布局效率及性能。
232 0
|
Android开发
Android自定义View,制作饼状图带动画效果
一个简单的自定义view饼状图,加入了动画效果
152 0
Android自定义View,制作饼状图带动画效果