Android绘制平移动画的示例代码
程序员文章站
2022-06-09 19:56:39
目录1、具体操作步骤2、具体实施创建imageview创建objectanimator对象3、具体实例activity_main.xmlmainactivity.java1、具体操作步骤创建image...
1、具体操作步骤
创建imageview对象
创建objectanimator对象
通过offloat方法实现平移
2、具体实施
创建imageview
<imageview android:id="@+id/car" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerinparent="true" android:src="@mipmap/car"/>
创建objectanimator对象
1.第一位参数是需要移动的图片
2.第二位参数是设置在什么轴移动,例子translationx,就是在x轴移动
objectanimator objectanimator = objectanimator.offloat(car, "translationx", 0f, -200); objectanimator.setduration(2000); objectanimator.start();
3、具体实例
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <relativelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".mainactivity"> <imageview android:id="@+id/car" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerinparent="true" android:src="@mipmap/car"/> <linearlayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerhorizontal="true" android:orientation="horizontal" android:layout_below="@id/car" android:layout_margintop="100dp"> <button android:id="@+id/left" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="forward" android:textallcaps="false"/> <button android:id="@+id/reset" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="reset" android:textallcaps="false" android:layout_marginleft="20dp"/> <button android:id="@+id/right" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="backword" android:textallcaps="false" android:layout_marginleft="20dp"/> </linearlayout> </relativelayout>
mainactivity.java
package com.example.a4_10_float; import androidx.appcompat.app.appcompatactivity; import android.animation.objectanimator; import android.os.bundle; import android.view.view; import android.widget.button; import android.widget.imageview; public class mainactivity extends appcompatactivity { private imageview car; private button left; private button reset; private button right; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); car = findviewbyid(r.id.car); left = findviewbyid(r.id.left); reset = findviewbyid(r.id.reset); right = findviewbyid(r.id.right); } @override protected void onstart() { super.onstart(); left.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { floaat(1); } }); reset.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { floaat(0); } }); right.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { floaat(2); } }); } //封装好一个方法,开控制向左向右移动和回到初始位置 private void floaat(int a) { if (a==1) { objectanimator objectanimator = objectanimator.offloat(car, "translationx", 0f, -200); objectanimator.setduration(2000); objectanimator.start(); }else if (a==0){ objectanimator objectanimator = objectanimator.offloat(car, "translationx", 0f, 0); objectanimator.setduration(2000); objectanimator.start(); }else if (a==2){ objectanimator objectanimator = objectanimator.offloat(car, "translationx", 0f, 200); objectanimator.setduration(2000); objectanimator.start(); } } }
一个最简单的平移动画就实现了
到此这篇关于android绘制平移动画的示例代码的文章就介绍到这了,更多相关android平移动画内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
上一篇: 回到拉萨,回到了布达拉,来吧!