Animations的第二种使用方法
1.在res文件夹下新建一个anim的 文件夹;
2.创建xml文件,首先加入set便签,改标签如下:
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator"> </set>
3.在该标签当中加入alpha、rotate、scale或translate标签
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator"> <translate android:fromXDelta="50%p" android:toXDelta="0" android:fromYDelta="50%p" android:toYDelta="0" android:duration="3000"/> </set>
4.在代码当中使用AnimationUtils加载xml文件,并生成Animation对象
translate_btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.translate); image.startAnimation(animation); } });
重点解释:
<rotate android:fromDegrees="0" android:toDegrees="360" android:pivotX="50%" android:pivotY="50%" android:duration="4000"/>
android:pivotX的值共有三种设置方法
1.android:pivotX=“50”
这种方法使用绝对位置定位,也就是像素的绝对值,但是(0,0)并不是相对于父控件而言的,不是屏幕的左上角,而是view的左上角,以view左上角为(0,0)点;
2.android:pivotX="50%“
这种方法相对于view本身而言,pivotX,pivotY都为50%,则为view的中心
3.android:pivotX=”50%p“
这种方法相对于view的父控件定位,pivotX,pivotY都为50%P,并不是旋转点就在屏幕的中心,它的(0, 0)点也是view的左上角,pivotX,pivotY都为50%P意思是view左上角的横坐标加上父控件屏幕的一半像素长度为旋转点的横坐标,纵坐标如是;
相关推荐
视图动画,即标题中提及的“Animation<1>”,是早期Android系统中的动画机制,主要应用于API 10及以下版本。 视图动画主要包括TranslationAnimation、ScaleAnimation、AlphaAnimation和RotateAnimation四种基本类型...
<groupId>com.daimajia.androidanimation</groupId> <artifactId>library</artifactId> <version>1.1.3</version> <type>apklib</type> </dependency> <dependency> <groupId>com.daimajia.easing</groupId> ...
在Android平台上,2D动画是开发者用来提升用户体验和视觉效果的重要工具。本教程将深入探讨Android中的2D动画机制,包括视图动画和属性动画,它们是Android系统中实现动画效果的两大核心技术。 **视图动画(View ...
AndroidInput <=> 安卓输入 AndroidJavaClass <=> 安卓Java类 AndroidJavaObject <=> 安卓Java对象 AndroidJavaProxy <=> 安卓Java代理 AndroidJNI <=> 安卓本地编程接口 AndroidJNIHelper <=> 安卓本地接口...
<groupId>com.daimajia.androidanimation</groupId> <artifactId>library</artifactId> <version>1.1.3</version> <type>apklib</type> </dependency> <dependency> <groupId>com.daimajia.easing</...
<stroke android:width="2dp" android:color="#000000" /> <!-- 边框2dp,黑色 --> <corners android:radius="5dp" /> <!-- 所有角5dp的圆角 --> </shape> ``` 3. **自定义形状** - **椭圆**:只需将`<shape>...
在Android平台上,动画是提升用户体验的关键元素之一,尤其是在视图(View)操作中。"android_animation"这个主题主要聚焦于Android中的View动画,这包括了转换动画(Translation Animation)、缩放动画(Scale ...
在XML文件中,用`<animation-list>`作为根标签,并设置其`android:id`属性为一个唯一标识符,通常使用`@+id/my_animation`。同时,`android:oneshot`属性用来决定动画是否只播放一次(值设为`true`)或者循环播放...
`<shape>`是Android中最基本的图形定义方式之一,它可以用于创建复杂的背景效果。通常情况下,`<shape>`定义的XML文件会被放置在项目的`drawable`目录下,而不是`drawable-hdpi`等目录。`<shape>`支持定义多种类型的...
在Android中,我们可以使用`<alpha>`、`<scale>`、`<translate>`和`<rotate>`标签来定义动画。对于“圆形向外扩散”,我们可能需要用到`<scale>`标签来扩大圆形的大小,并结合`<alpha>`标签改变其透明度。 2. **XML...
在Android中,可以使用`<animation-list>`标签在XML资源文件中定义帧动画,并通过`AnimationDrawable`类进行控制。例如,一个简单的按钮点击效果可能就是帧动画的应用。 2. **补间动画(Tween Animation)**:补间...
<item android:drawable="@drawable/frame2" android:duration="100" /> <item android:drawable="@drawable/frame3" android:duration="100" /> </animation-list> ``` 这个例子中,动画将依次显示frame1、frame2...
`<set>`标签用于组合多个动画,而每个动画类型如`<alpha>`、`<scale>`等都有对应的属性来配置动画效果。 Frame-by-Frame Animation 适用于需要精确控制每一帧显示情况的动画,比如播放一系列连续的图像来形成动画...
本主题聚焦于Android自定义动画,特别是如何通过组合`<scale>`和`<translate>`基本动画来创建一个动态的雪花飘落效果。我们将深入探讨这两个动画类型以及如何将它们整合到一起。 首先,让我们了解`<scale>`动画。`...
为了帮助开发者更好地理解Android中的各种XML属性及其用途,本文将详细介绍部分核心XML元素及其属性,包括但不限于`<animated-rotate>`、`<animation-list>`、`<bitmap>`等。 #### `<animated-rotate>`: 动态旋转...
<item android:drawable="@drawable/frame2" android:duration="100" /> <!-- 更多帧 --> </animation-list> ``` 然后在代码中加载并启动动画: ```java AnimationDrawable animation = (AnimationDrawable) ...
这篇博客文章“Android小项目之--Animation四种动画的图片效果(附源码)”详细讲解了如何在Android平台上实现四种不同的动画效果,包括平移动画、旋转动画、缩放动画以及淡入淡出动画。通过这些动画,开发者可以...
<item android:drawable="@drawable/frame2" android:duration="100"/> <item android:drawable="@drawable/frame3" android:duration="100"/> <!-- 更多帧... --> </animation-list> ``` 在上述代码中,`@...
在XML中,可以通过`<animation-list>`标签定义一个帧动画,或者使用`<translate>`, `<scale>`, `<rotate>`, 和 `<alpha>`等标签创建平移、缩放、旋转和透明度变化的效果。同时,`AnimationUtils`和`...