• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android学习第五篇——动画效果

Android学习第五篇——动画效果

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了Android学习第五篇——动画效果等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android学习第五篇——动画效果


接下来我要介绍的是Android的一些动画效果

一、AlphaAnimation透明动画

这里我用到了两种不同的方法来实现透明动画效果

首先布局文件很简单,就是拖放一个按钮在界面上

 

 

1、直接调动AlphaAnimation类

我们到MainActivity文件中,找到PlaceholderFragment,接下来我们在这里面执行接下来的方法

 

public static class PlaceholderFragment extends Fragment {

		public PlaceholderFragment() {
		}

		@Override
		public View onCreateView(LayoutInflater inflater, ViewGroup container,
				Bundle savedInstanceState) {
			View rootView = inflater.inflate(R.layout.fragment_main, container,
					false);
			return rootView;
		}
	}
我们首先要获取那个按钮,然后对按钮添加监听事件

 

 

rootView.findViewById(R.id.btnAnimate).setOnClickListener(new OnClickListener() {
				@Override
				public void onClick(View v) {
				}
			});
接下来就是最关键的添加动画效果

 

 

rootView.findViewById(R.id.btnAnimate).setOnClickListener(new OnClickListener() {
				@Override
				public void onClick(View v) {
					AlphaAnimation aa=new AlphaAnimation(0, 1);//
 
AlphaAnimation(float fromAlpha, float toAlpha)起始透明度和结束透明度</div> aa.setDuration(1000);//变化持续的时间1000ms v.startAnimation(aa); } });代码写到这里就已经完成了我们的效果,直接在模拟器中运行就可以看到效果了。

2、调用另外的XML动画文件

 

相对于上面的这种方法,接下来的方法,在调用的时候会显得更加简单,就是一句话的事

 

public void onClick(View v) {
	v.startAnimation(AnimationUtils.loadAnimation(getActivity(), R.anim.aa));
}
只要这么一句话就结束了,但是关键在于R.anim.aa这个文件

 

我们需要新建一个XML文件,并且把Resource Type设为下图的值,填上文件名,然后选择alpha,点击Finish就完成了
\

接下来我们在创建的文件中作如下编写就直接可以调用了

 




这样我们也完成了第二种方法。

 

二、RotateAnimation旋转动画

这里我同样会用两种方法来实现旋转动画,跟第一个动画一样</div>  </div> 我们同样是一个按钮作为对象</div> 布局文件</div>
</div>

1、直接调用RotateAnimation

接下来我们就要到MainActivity中进行操作了</div> 首先定义一下</div>
private RotateAnimation ra;
接下来我们会在onCreate中操作</div>
ra=new RotateAnimation(0, 360, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
		ra.setDuration(1000);
		
		findViewById(R.id.btnRotate).setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				v.startAnimation(ra);
			}
		});
我们一开始调用的构造函数是下面这个</div>
ra=new RotateAnimation(fromDegrees, toDegrees, pivotXType, pivotXValue, pivotYType, pivotYValue)
这里面的参数分别表示为:开始角度,目标角度,X坐标类型,X坐标值,Y坐标类型,Y坐标值</div> 为什么我们要用这个呢??</div> 因为我们需要通过这个来控制按钮是围绕哪个中心进行旋转的,上面设置的值表示“按钮围绕自身X的一半,Y的一半,转一圈”,我们会觉这样写很繁琐,有时候会不记得那个类型怎么写,所以我们接下来看看第二种方法(上述代码已经可以运行了,运行结果就是点击按钮后会旋转一圈)</div>

2、调用XML文件

XML文件的创建和第一种的一样,只是下面的根标签要换成Rotate</div>



可能看了这个以后我们会疑问,为什么这里不用写pivotX和pivotY的Type了呢??</div> 因为在这里,pivotX和pivotY可以接受百分比的值,这样我们就觉得很方便,当然如果这两个值设成数值,表示的是像素。</div> 最后一步就很简单了,只要在MainActivity中调用就可以了</div>
findViewById(R.id.btnRotate).setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				v.startAnimation(AnimationUtils.loadAnimation(MainActivity.this, R.anim.ra));
			}
		});
第二种方法到这里就完成了,代码执行的效果和前一种是一样的。
 </div>

三、TranslateAnimation移动动画

 </div> 布局文件</div>
</div>

1、直接调用TranslateAnimation

 </div> 方法和之前的没有很大的差别,就不在多说,直接贴代码了</div>
		private TranslateAnimation ta;
		//相对于自身来说,向右移动200增量,和向下移动200增量
		ta = new TranslateAnimation(0, 200, 0, 200);
		ta.setDuration(1000);
		
		findViewById(R.id.btnTranslate).setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				v.startAnimation(ta);
			}
		});
</div>

2、调用XML文件

同样和之前没事差别,改变的只是XML文件的根标签Translate</div>




最后调用</div>
v.startAnimation(AnimationUtils.loadAnimation(MainActivity.this, R.anim.ta));
这两个的效果是完全相同的,各个参数的值表示什么意思上面的注释中已经有了</div>  </div>

四、ScaleAnimation缩放动画

 </div> 布局文件</div>
<framelayout android:id="@+id/container" android:layout_height="match_parent" android:layout_width="match_parent" tools:context="com.example.scaleanimation.MainActivity" tools:ignore="MergeRootFrame" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"></framelayout>
</div>

1.、直接调用ScaleAnimation

 </div>
		private ScaleAnimation sa;//这句需要定义在外面
		//相对于自身的中心点来缩放
		sa = new ScaleAn



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-05-26Android 四大组件之Activity(续2),androidactivity
  • 2017-05-26ListView中响应item的点击事件并且刷新界面,listviewitem
  • 2017-05-26Unity编译时找不到AndroidSDK的问题 | Unable to list target platforms(转载),unityengine.ui找不到
  • 2017-05-26Nginx反向代理导致大文件下载失败
  • 2017-05-26Android 缓存类LruCache源码分析
  • 2017-05-26ContentProvider中央档案馆,以及获取联系人电话的示例,contentprovider
  • 2017-05-26setOnLongClickListener中return值,onlongclicklistener
  • 2017-05-26android 数据文件存取至储存卡,android存取
  • 2017-05-26popupwindow展示,popupwindow
  • 2017-05-26Android_LIFE帮(基于最新百度地图API的开源项目)

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • linux和android调试工具介绍及方法汇总
    • 关于在R中无法引用自己的xml文件,引用xml文件
    • Android如何使用Https
    • Android安全机制
    • 移动应用支付系列一:支付宝支付,移动应用支付系列
    • Android--获取系统时间的方式介绍
    • [Android] 使用ViewPager 实现导航,androidviewpager
    • 利用散列连接从DB2通用数据库获得最佳性能
    • Android中开发工具Android Studio修改created用户(windows环境),androidcreated
    • Android应用:横竖屏切换总结,android切换总结

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有