Android中给layout下的布局文件添加动画效果

与天地兮比寿,与日月兮齐光。这篇文章主要讲述Android中给layout下的布局文件添加动画效果相关的知识,希望能为你提供帮助。
先上实现效果:

Android中给layout下的布局文件添加动画效果

文章图片

 
 
给ListView添加文本内容,文本内容添加进ListView的过程中增加动画效果
 
步骤一:
先定义好一个动画文件,把要实现的动画效果写好。
1、在res文件夹下创建anim文件夹
2、在anim文件夹中添加一个fd.xml(文件名自定义)文件
fd.xml内容:
 
< !--组合动画 duration:组合动画发生的的间隔时间 --> < set android:duration="1000" xmlns:android="http://schemas.android.com/apk/res/android"> < !--x,y轴的变化--> < translate android:fromXDelta="100%" android:fromYDelta="100%" android:toXDelta="0" android:toYDelta="0" /> < !--透明度变化--> < alpha android:fromAlpha="0" android:toAlpha="1" /> < /set>

 
 
步骤二:
在主布局文件activity_main.xml中添加ListView
< LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > < ListView android:id="@+id/mylist" android:layout_width="match_parent" android:layout_height="wrap_content" > < /ListView> < /LinearLayout>

【Android中给layout下的布局文件添加动画效果】 
 
步骤三:java代码的实现
 
package com.contentprovide.liuliu.myapplication; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.view.animation.LayoutAnimationController; import android.widget.ArrayAdapter; import android.widget.ListView; import java.util.ArrayList; public class MainActivity extends AppCompatActivity {LayoutAnimationController layoutAnimationController; //动画控制器ListView mylist; //定义适配器用于映射内容到ListView中 ArrayAdapter< String> arrayAdapter; //定义集合用于添加内容,并把内容添加到适配器中 ArrayList< String> arrayList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mylist = (ListView) findViewById(R.id.mylist); // //动画文件转成动画变量 Animation animation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.fd); //实例化动画控制器变量,将动画变量传进控制器 layoutAnimationController = new LayoutAnimationController(animation); //通过控制器设置相关属性 layoutAnimationController.setDelay(1.0f); //动画间隔时间 layoutAnimationController.setOrder(LayoutAnimationController.ORDER_NORMAL); //排序方式//把动画和listview互相绑定 mylist.setLayoutAnimation(layoutAnimationController); //实例化集合,并且传递数据进集合中 arrayList = new ArrayList< > (); for (int a = 0; a < 10; a++) { arrayList.add("11"); }//把集合中的内容添加到适配器当中 arrayAdapter = new ArrayAdapter< > (MainActivity.this, R.layout.support_simple_spinner_dropdown_item, arrayList); //把适配器添加到listview当中 mylist.setAdapter(arrayAdapter); }}

 

    推荐阅读