- 浏览: 534565 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
tangyunliang:
大哥你太历害了谢谢
Android基于XMPP Smack Openfire开发IM【四】初步实现两个客户端通信 -
u013015029:
LZ,请问下,在// 添加消息到聊天窗口 , 这里获取Ed ...
Android基于XMPP Smack Openfire开发IM【四】初步实现两个客户端通信 -
endual:
怎么保持会话,我搞不懂啊
Android基于XMPP Smack Openfire开发IM【一】登录openfire服务器 -
donala_zq:
显示:[2013-11-30 11:50:36 - Andro ...
android-----------新浪微博 -
donala_zq:
哥,运行不了啊
android-----------新浪微博
效果图:
[img]
[/img]
工程结构图:
[img]
[/img]
布局文件:
main.xml
simple.xml
/res/anim/animation.xml
ControlActivity
SimpleActivity
图片就不上传了,哈哈哈!
[img]
[/img]
工程结构图:
[img]
[/img]
布局文件:
main.xml
<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/screen" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <ImageView android:src="@drawable/jay" android:layout_width="fill_parent" android:layout_height="fill_parent" /> <TextView android:id="@+id/textView0" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="#000000" android:textSize="18dip" android:background="#00FF00" android:text="Android游戏开发的世界" android:gravity="center_vertical|center_horizontal" /> <TextView android:id="@+id/textView1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="#FFFFFF" android:textSize="18dip" android:background="#0000FF" android:text="Android 游戏开发之使用AnimationDrable实现Frame动画" android:gravity="center_vertical|center_horizontal" /> <Button android:id="@+id/button0" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="这是一个简单的Frame动画" /> </LinearLayout> </ScrollView>
simple.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/button0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="播放动画" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="停止动画" /> </LinearLayout> <RadioGroup android:id="@+id/radiogroup" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <RadioButton android:id="@+id/checkbox0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:text="单次播放" /> <RadioButton android:id="@+id/checkbox1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="循环播放" /> </RadioGroup> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="拖动进度条修改透明度(0 - 255)之间" /> <SeekBar android:id="@+id/seekBar" android:layout_width="fill_parent" android:layout_height="wrap_content" android:max="256" android:progress="256"/> <ImageView android:id="@+id/imageView" android:background="@anim/animation" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
/res/anim/animation.xml
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> <item android:drawable="@drawable/a" android:duration="100" /> <item android:drawable="@drawable/b" android:duration="100" /> <item android:drawable="@drawable/c" android:duration="100" /> <item android:drawable="@drawable/d" android:duration="100" /> <item android:drawable="@drawable/e" android:duration="100" /> <item android:drawable="@drawable/f" android:duration="100" /> <item android:drawable="@drawable/g" android:duration="100" /> <item android:drawable="@drawable/h" android:duration="100" /> <item android:drawable="@drawable/i" android:duration="100" /> <item android:drawable="@drawable/j" android:duration="100" /> </animation-list>
ControlActivity
package cn.m15.xys; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; /** * * @author tiger * email:xuanyusong@gmail.com * blog:http://blog.csdn.net/xys289187120 */ public class ControlActivity extends Activity { Context mContext = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mContext = this; /**发送信息**/ Button botton0 = (Button)findViewById(R.id.button0); botton0.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { Intent intent = new Intent(mContext,SimpleActivity.class); startActivity(intent); } }); } }
SimpleActivity
package cn.m15.xys; import android.app.Activity; import android.graphics.drawable.AnimationDrawable; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ImageView; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.SeekBar; import android.widget.SeekBar.OnSeekBarChangeListener; public class SimpleActivity extends Activity { /**播放动画按钮**/ Button button0 = null; /**停止动画按钮**/ Button button1 = null; /**设置动画循环选择框**/ RadioButton radioButton0= null; RadioButton radioButton1= null; RadioGroup radioGroup = null; /**拖动图片修改Alpha值**/ SeekBar seekbar = null; /**绘制动画View**/ ImageView imageView = null; /**绘制动画对象**/ AnimationDrawable animationDrawable = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.simple); /**拿到ImageView对象**/ imageView = (ImageView)findViewById(R.id.imageView); /**通过ImageView对象拿到背景显示的AnimationDrawable**/ animationDrawable = (AnimationDrawable) imageView.getBackground(); /**开始播放动画**/ button0 = (Button)findViewById(R.id.button0); button0.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { /**播放动画**/ if(!animationDrawable.isRunning()) { animationDrawable.start(); } } }); /**停止播放动画**/ button1 = (Button)findViewById(R.id.button1); button1.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { /**停止动画**/ if(animationDrawable.isRunning()) { animationDrawable.stop(); } } }); /**单次播放**/ radioButton0 = (RadioButton)findViewById(R.id.checkbox0); /**循环播放**/ radioButton1 = (RadioButton)findViewById(R.id.checkbox1); /**单选列表组**/ radioGroup = (RadioGroup)findViewById(R.id.radiogroup); radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int checkID) { if(checkID == radioButton0.getId()) { //设置单次播放 animationDrawable.setOneShot(true); }else if (checkID == radioButton1.getId()) { //设置循环播放 animationDrawable.setOneShot(false); } //发生改变后让动画重新播放 animationDrawable.stop(); animationDrawable.start(); } }); /**监听的进度条修改透明度**/ seekbar = (SeekBar)findViewById(R.id.seekBar); seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { @Override public void onStopTrackingTouch(SeekBar seekBar) { } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean frameTouch) { /**设置动画Alpha值**/ animationDrawable.setAlpha(progress); /**通知imageView 刷新屏幕**/ imageView.postInvalidate(); } }); } }
图片就不上传了,哈哈哈!
发表评论
-
Android中如何模拟一次点击(touch)事件
2014-05-06 10:41 0在Android中有时需要模拟某一个View的touch事件, ... -
Android程序Crash时的异常上报
2014-04-28 18:15 0http://blog.csdn.net/singwhatiw ... -
android程序中证书签名校验的方法
2014-04-28 17:58 2008android程序中证书签名校验的方法一 2013-02 ... -
MD5理解错了,哎
2014-03-17 14:14 0MD5只对数据加密是无法解密的,也就是说,你把100加密后,就 ... -
Android 获取网络时间
2014-03-12 11:42 2046Android 获取网络时间 在网上看到的最常见的方式有: ... -
SQLite清空表并将自增列归零
2014-03-05 18:02 1553SQLite清空表并将自增列归零 作者:Zhu Yanfeng ... -
Handler小看一下
2013-11-11 16:42 0android handler调用post方法还是阻塞 su ... -
Frame Animation小看一下
2013-10-12 16:30 794Demo运行效果图: 源码: -
动画小学一下
2013-10-12 16:14 739转自: http://www.eoeandroid.com/f ... -
Android 动画之ScaleAnimation应用详解
2013-10-12 15:49 1014===============eoeAndroid社区推荐:= ... -
android开发中的一个工具类
2013-06-19 16:04 0package com.wanpu.login.dialog; ... -
android TextView怎么设置个别字体颜色并换行?
2013-06-20 09:25 1693(1)、TextView 设置个别字体颜色 TextView ... -
Android开发之文件下载,状态时显示下载进度,点击自动安装
2013-05-07 15:38 1433在进行软件升级时,需要进行文件下载,在这里实现自定义的文件下载 ... -
android中的状态保存
2013-04-07 14:21 982package com.zzl.call; import ... -
android动画基础:tween动画
2013-04-06 11:21 1252工程结构图: [img] [/img] 四个动画的xml ... -
面试中遇到的几个问题
2013-06-09 11:56 1006SAX与DOM之间的区别 SAX ( ... -
Android获取其他包的Context实例,然后调用它的方法,反射!!!
2013-03-25 10:32 1227Android中有Context的概念,想必大家都知道。Con ... -
Android的内存机制和常见泄漏情形
2013-03-06 16:55 798一、 Android的内存机制 Android的程序由Ja ... -
JUnit测试小小demo
2013-03-06 16:37 1170运行效果图: [img] [/img] 项目结构图 ... -
android开发中的异常小工具
2013-03-04 15:53 902package com.zzl.tools; impor ...
相关推荐
在选择合适的动画实现方式时,开发者应考虑性能、兼容性以及需求的复杂性。 通过阅读“Android 游戏开发之使用AnimationDrable实现Frame动画”相关资料,你可以深入理解`AnimationDrawable`的工作原理,并学习如何...
在Android中,Frame动画主要由`AnimationDrawable`类来实现。这个类是一个可绘制对象,可以作为视图的背景,并且能够按照指定的时间间隔依次显示一组图片。这些图片通常存储在XML资源文件中,通过`<animation-list>`...
本教程将详细介绍如何在悬浮窗口(Floating Window)上实现Frame动画。 首先,我们需要了解悬浮窗口的概念。在Android中,悬浮窗口通常通过实现Service并使用WindowManager接口来创建。它可以在应用的主界面或其他...
在这个"简单的Frame动画"项目中,开发者实现了一个由6张图片组成的帧动画。接下来,我们将深入探讨帧动画的工作原理、如何在Android中创建以及相关的重要知识点。 帧动画的核心思想是将一系列连续的图片快速地展示...
在Android开发中,帧动画(Frame Animation)是一种常见的动画效果,它通过连续播放一系列静态图像来模拟动态效果。本文将深入探讨如何在Android项目中应用帧动画,包括使用`AnimationDrawable`和`ImageView`实现这...
其次,Frame动画(帧动画)是通过顺序播放预先准备好的一系列图像来实现动画效果,类似于播放电影胶片。在Android中,帧动画同样可以通过XML文件定义,每个`<item>`标签代表一帧图像。以下是一个简单的帧动画示例: ...
帧动画(Frame Animation)是Android系统提供的一种基本的动画机制,它通过连续播放一系列静态图像来创造出动态的效果,类似于我们小时候看的翻页动画书。在手机软件开发中,帧动画常用于创建简单的过渡效果、加载...
在Android开发中,帧动画(Frame Animation)是一种常见的动态效果实现方式,它通过连续播放一系列静态图像来模拟连续动作,类似于传统的电影制作原理。在本示例中,“Android帧动画demo”将展示如何在Android应用中...
- **理解动画逻辑**:腾讯QQ的上拉刷新动画通常包含一个旋转的箭头和一个下拉指示条,通过改变这两部分的动画实现上拉时的视觉效果。 - **组合动画**:可以结合使用帧动画和补间动画(Tween Animation)来完成这个...
在Android开发中,动画是提升用户体验的关键因素,而帧动画(Frame Animation)是其中一种简单易用的动画形式。帧动画通常用于实现一系列连续图片播放的效果,如动图或者简单的视频效果。本节将深入探讨帧动画的实现...
与Tween动画不同,Tween动画是通过对对象属性(如平移、旋转、缩放等)进行平滑过渡来实现动画效果,而Frame动画则是一帧一帧地展示图片来创建动画。 **XML实现Frame动画** 在Android中,Frame动画通常通过XML资源...
在本文中,我们将深入探讨如何使用`Frame动画`和`按键监听`来实现一个基本的窗户打开和关闭操作。在计算机编程,特别是图形用户界面(GUI)开发中,这种功能通常用于模拟现实世界中的交互,比如点击按钮打开或关闭一...
在Android中,我们可以使用`AnimationDrawable`类来实现Frame动画。 **实现方式:** 1. **XML方式**:通常在res/anim目录下创建一个xml文件,定义帧的顺序、持续时间和重复行为。例如,可以设置`<animation-list>`...
帧动画(Frame Animation)是Android提供的一种简单而直观的动画实现方式,适用于实现一系列静态图片按顺序播放的效果,类似于传统的动画胶片。本篇将深入探讨Android帧动画的概念、原理以及如何通过实例进行创建。 ...
本DEMO深入探讨了三种实现帧动画的方法,并结合LruCache内存缓存策略来优化性能,防止因大量图片加载导致的内存溢出(OOM)问题。 一、FrameAnimation+xml方式 在Android中,通过XML资源文件可以方便地创建帧动画。...
在Android开发中,帧动画(Frame Animation)是一种常见的动画实现方式,它通过连续播放一系列静态图像来创造出动态效果。帧动画适用于那些简单的、基于图片序列的动画,如按钮的按下和抬起状态变化、加载动画等。...
这篇博文"玩转Android---2D图形及动画---Frame动画"显然会深入探讨如何在Android平台上创建和管理帧动画。帧动画是一种将一系列静态图像连续播放以产生动态效果的技术,常见于游戏和应用程序中的过渡效果。 首先,...
在Android开发中,实现一个情侣短信软件,其中的Frame动画在悬浮窗口上的应用是一个吸引用户注意力和提升用户体验的重要设计。本文将深入探讨如何在Android应用中实现这一功能,主要涉及的技术点包括Android权限管理...