Animation的学问

2024-08-25 04:38
文章标签 animation 学问

本文主要是介绍Animation的学问,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


动画播放相信大家一定不会陌生,不过动画的大杀器很多人可能没用过,这里提供三种较为简便的方式开展动画的制作,近期在写的程序总结出来打个点

动画加载的三种方式


第一种

注意AnimationUtils的使用,这里 少了很多麻烦的事情,代码的具体的类需要指定的东西过多,这里写好xml加载进来,让动画尽情的转起来

private void showHead(View head, View content) {head.startAnimation(AnimationUtils.loadAnimation(this, R.anim.slide_out_top));content.startAnimation(AnimationUtils.loadAnimation(this, R.anim.content_down));content.setPadding(0, 200, 0, 0);}
<set xmlns:android="http://schemas.android.com/apk/res/android"android:interpolator="@android:anim/decelerate_interpolator"><translateandroid:duration="5000"android:fromYDelta="-200"android:toYDelta="0" />
</set>

<set xmlns:android="http://schemas.android.com/apk/res/android"android:interpolator="@android:anim/decelerate_interpolator"><translateandroid:duration="5000"android:fromYDelta="-200"android:toYDelta="0" />
</set>


利用系统的AnimationUtils进行动画的播放,这里面可以省掉自己书写很多的参数也算是比较方便


第二种方式:.

int version =  Integer.valueOf(android.os.Build.VERSION.SDK);if(version > 5 ){overridePendingTransition(R.anim.zoomin, R.anim.zoomout);}
注意最关键的这个方法的注释,和两个参数的作用,这个作用很大的,对于outside的Activity也是有作用的
void android.app.Activity.overridePendingTransition(int enterAnim, int exitAnim)Call immediately after one of the flavors of startActivity(Intent) or finish to specify an explicit transition animation to perform next. As of android.os.Build.VERSION_CODES.JELLY_BEAN an alternative to using this with starting activities is to supply the desired animation information through a ActivityOptions bundle to or a related function. This allows you to specify a custom animation even when starting an activity from outside the context of the current top activity.Parameters:
enterAnim A resource ID of the animation resource to use for the incoming activity. Use 0 for no animation.
exitAnim A resource ID of the animation resource to use for the outgoing activity. Use 0 for no animation.


第三种方式

传统的方式  五种动画 直接new出来,然后使用AnimationSet或者单独使用某一个,然后view执行动画


动画的执行方式不止这几种关键是用的好,用的到位才行


第四种

在AndroidManifest里面,对于application和activity标签可以定义theme属性。如果对Application定义了某一个属性,那么会对所有的activity产生影响,当然你可以在activity中覆盖它。

<application android:theme="@style/ThemeActivity">

然后在values/themes.xml中

<style name="ThemeActivity" mce_bogus="1">
<item name="android:windowAnimationStyle">@style/AnimationActivity</item>
<item name="android:windowNoTitle">true</item>
</style>

在values/styles.xml中

<style name="AnimationActivity" parent="@android:style/Animation.Activity" mce_bogus="1">
<item name="android:activityOpenEnterAnimation">@anim/push_left_in</item>
<item name="android:activityOpenExitAnimation">@anim/push_left_out</item>
<item name="android:activityCloseEnterAnimation">@anim/push_right_in</item>
<item name="android:activityCloseExitAnimation">@anim/push_right_out</item>
</style>


这样就可以了,至于anim中的动画,就自己定义啦,这个和普通的animation是一样的,如果不知道的话,请参见

http://developer.android.com/guide/topics/graphics/view-animation.html。

这种方式除了可以定义activity的animation之外,还有task,window出现和结束时候的动画,具体请参见

http://developer.android.com/reference/android/R.styleable.html#WindowAnimation


简单总结,随后会更新

这篇关于Animation的学问的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1104565

相关文章

【前端】animation动画以及利用vue制作简单的透明度改变动画,包含vue生命周期实现

一. 问题描述 想做一个文字透明度从1到0然后再从0到1的css动画。 二. 代码写法 2.1 animation写法 2.1.1 animation属性key 2.1.2 代码展示 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=de

Android 属性动画(Property Animation)

本文是学习以下三位大神之后,整理的学习笔记,彩蛋在编号6          http://blog.csdn.net/lmj623565791/article/details/38067475          http://www.cnblogs.com/angeldevil/archive/2011/12/02/2271096.html          http://www.tu

android 动画 ——视图动画(View Animation)

android动画分为视图动画(View Animation)、属性动画(Property Animation) 想看属性动画(Property Animation):请移步至http://blog.csdn.net/u013424496/article/details/51700312 这里我们来说下视图动画(View Animation)的纯代码写法,还有一种是xml调用, 对于xml调

Android Property Animation属性动画

本文内容摘自《疯狂Android讲义 第三版-李刚著作》

有关animation抽屉动画示例

<includeandroid:id="@+id/ly_album_details"android:layout_width="match_parent"android:layout_height="match_parent"layout="@layout/ly_miniplayer_tvseries"android:visibility="gone" ></include>

android 使用xml让animation按顺序播放

android 使用xml让animation按顺序播放 需求: 想让一个View按顺序播放我已经用xml文件定义好的动画,之前我是监听动画的结束,在前一个动画结束的时候,开启第二个动画,但是这样写太麻烦。 最后发现还可以这样写。 实现 <?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.an

Animation动画效果简单汇总

————————————案例结构很复杂一步步来———————————— 1、activity_main.xml(首先看启动界面布局文件,里面有2个button) <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"and

animation 动画播放完成后 回调

1.使用携程 public static IEnumerator PlayAnimation(Animation animation, string ani_name, Action onEnd) {     AnimationClip ac = animation.GetClip(ani_name);     if (ac == null)     {         yield return

【bug记录6】css 写animation时,Safari浏览器最后一帧部分样式闪回

一、问题场景 1、目标动画的实现: 想实现一个元素A从位置1平移到位置2,并且在移动过程中逐渐缩小、透明度变小 2、原代码实现: .a{//分别设置了:动画keyframes名称、单次持续时间、//timing function、delay时间、iter count//以及animation-fill-mode(代表的是动画开始前后保持在哪个样式)animation: move 0.3s

animation+transform实现轨迹平移

之前通过animation+transtion实现平移,transtion通过定义left和top值来移动; 其中 animation是定义一个动画,可以通过百分数来定义每个时刻的状态 基本的需要:  -webkit-animation-name: Aname; -webkit-animation-duration: 30s; 本次操作实现,太阳落山的轨迹,用了transform属性,可