Android课程设计第三天帧动画区间动画
注意:课程设计只为完成任务,不做细节描述~
点火是帧动画,发射是区间动画,于是
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="@mipmap/bg">
<ImageView
android:id="@+id/img_rocekt"
android:layout_width="30dp"
android:layout_height="90dp"
android:background="@drawable/fire"
android:layout_alignParentBottom="true"
/>
<Button
android:id="@+id/btn_launch"
android:layout_width="60dp"
android:layout_height="30dp"
android:text="发射"
android:background="#0ccfff"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_margin="15dp"
android:textSize="12sp"
/>
<Button
android:layout_width="60dp"
android:layout_height="30dp"
android:text="点火"
android:id="@+id/btn_fire"
android:background="#0ccfff"
android:textSize="12sp"
android:layout_toLeftOf="@id/btn_launch"
android:layout_alignBottom="@id/btn_launch"
/>
</RelativeLayout >
package com.example.myapplication2; import android.graphics.drawable.AnimationDrawable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.ImageView;
/*
安卓基本动画
帧动画
连贯的图片按照顺序播放
布局文件中准备一个控件,用来承载动画的
准备动画文件background属性里<animation-list>
在java代码中,声明实例化控件
声明并初始化动画对象 AnimationDrawable
启动动画 动画对象直接启动
区间动画 透明度 旋转 缩放 位移
在布局文件中准备一个控件,用来承载动画
准备动画文件
在java代码中,声明实例化控件
声明并初始化动画对象 Animation
启动动画 执行者启动动画对象
属性动画 模拟
*/
public class MainActivity extends AppCompatActivity { private View img_rocket;
//声明一个帧数动画的类的对象
private AnimationDrawable anim_fire;
private Button btn_launch;
//区间动画的动画类对象
private Animation anim_launch=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
img_rocket=findViewById(R.id.img_rocekt);
anim_fire= (AnimationDrawable) img_rocket.getBackground();
anim_fire.start(); btn_launch= (Button) findViewById(R.id.btn_launch); btn_launch.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
anim_launch=AnimationUtils.loadAnimation(MainActivity.this,R.anim.launch);
img_rocket.startAnimation(anim_launch);
}
}); } }
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="0" android:fromYDelta="0"
android:toYDelta="-80%p"
android:duration="4000">
</translate>
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<item android:drawable="@mipmap/rocket_launch_1" android:duration="200"></item>
<item android:drawable="@mipmap/rocket_launch_2" android:duration="200"></item> </animation-list>
Android课程设计第三天帧动画区间动画的更多相关文章
- Android课程设计第五天欢迎界面(滑动)和图形选择
注意:课程设计只为完成任务,不做细节描述~ 滑动界面 package com.example.myapplication; import android.content.Intent; import ...
- Android课程设计第二天界面排版
注意:课程设计只为完成任务,不做细节描述~ 老师叫我们做一个这个样子,然后.. <?xml version="1.0" encoding="utf-8"? ...
- Android课程设计——博学谷1.0
本文讲述了如何应用大三下学期智能移动终端开发技术课程所学知识,完成包含服务器端.客户端程序的应用——博学谷登录模块的开发,结合java语言基本知识,例如:字符串.列表.类.数据库读写等,设计.实现一个 ...
- Android课程设计第六天欢迎界面(跳转)
注意:课程设计只为完成任务,不做细节描述~ package com.example.myapplication; import android.app.Activity; import android ...
- Android课程设计第四天ListView运用
注意:课程设计只为完成任务,不做细节描述~ 效果图 <?xml version="1.0" encoding="utf-8"?> <Relat ...
- Android课程设计第一天Android Studio安装
注意:课程设计只为完成任务,不做细节描述~ 学校有一个Android的课设,所以顺便把Android Studio安装了上去. 实际上安装过程并不复杂,只有几个地方需要注意~ 安装包可以去http:/ ...
- 【Android UI设计与开发】第03期:引导界面(三)仿微信引导界面以及动画效果
基于前两篇比较简单的实例做铺垫之后,这一篇我们来实现一个稍微复杂一点的引导界面的效果,当然也只是稍微复杂了一点,对于会的人来说当然还是so easy!正所谓会者不难,难者不会,大概说的就是这个意思了吧 ...
- 一培训机构设计的学习android课程内容:供大家参考
转自:http://www.cnblogs.com/csj007523/archive/2011/06/16/2082682.html 一培训机构设计的学习android课程内容:供大家参考 第一阶段 ...
- android 帧动画,补间动画,属性动画的简单总结
帧动画——FrameAnimation 将一系列图片有序播放,形成动画的效果.其本质是一个Drawable,是一系列图片的集合,本身可以当做一个图片一样使用 在Drawable文件夹下,创建ani ...
随机推荐
- Java核心技术之基本数据类型
这篇文章.我们讨论一些java的最主要的东西.这些东西我们一般刚刚学java的时候就学过,可是不一定真正明确. 正好,我在做一个读取内存的值,涉及到bit位的值的读取和写.那就能够讨论一个java的基 ...
- 常用到的JS 验证(包括例子)
//验证是否为空 function check_blank(obj, obj_name){ if(obj.value != ''){ retur ...
- 关于hbase集群
1 一个hadoop data node上运行一个region server region server和data node在同一台机器上,这样就保证了数据的局部性. 2 hbase region s ...
- Java面试手写代码题
1.栈实现 2.Iterator实现 3.单例 4.多线和控制(暂停,恢复,停止) 5.生产者消费者
- chan
第一单元:分型.笔.线段 ?1 分型 一.分型.笔和线段所属范畴 缠师在<教你炒股票72:本ID已有课程的再梳理>中对缠论做过这样的说明“本ID的理论,本质上分两部分,一是形态学,二是动 ...
- hdu-2066 一个人的旅行(最短路spfa)
题目链接: 一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Pr ...
- Linux查看当前在线用户信息
Linux是多用户系统,支持同时登陆多个用户,在终端中用"w"命令可以查看当前的在线用户,以及每个用户正在执行的进程: 第一行显示的字段信息分别是: 12:16:49:系统当前时间 ...
- Java内存溢出?
内存溢出? https://www.cnblogs.com/crossoverJie/p/9552119.html 前言 OutOfMemoryError 问题相信很多朋友都遇到过,相对于常见的业务异 ...
- 理解Objective-C Runtime (五)协议与分类
Objective-C中的分类允许我们通过给一个类添加方法来扩充它(但是通过category不能添加新的实例变量),并且我们不需要访问类中的代码就可以做到. Objective-C中的协议是普遍存在的 ...
- JQ的双向数据绑定
把渲染页面封装在function里面 在修改后直接调用,但是如果有alert();一定要注意function的摆放位置,正常应该是在alert前面,应为如果在后面会影响重新渲染的效果