Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android Animations 動畫效果(四)

android Animations 動畫效果(四)

編輯:關於Android編程

1.LayoutAnimationController的使用方法
什麼是LayoutAnimationController
1.LayoutAnimationController用於為一個layout裡面的控件,或者是一個

ViewGroup裡面的控件設置動畫效果
2.每一個控件都有相同的動畫效果
3.這些控件的動畫效果在不同的時間顯示出來
4.LayoutAnimationController可以在xml文件中設置,也可以在代碼中設置


2.ListView與Animations結合使用
在代碼中使用LayoutAnimationController
1.創建一個Animation對象:
可以通過裝載xml文件,或者直接使用Animation的構造函數創建Animation對象
2使用如下代碼創建LayoutAnimationController對象:
LayoutAnimationController lac = new LayoutAnimationController

(animation);
3.設置控件顯示順序:
lac.serOrder(LayoutAnimationController.ORDER_NORMAL)
4.為ListView設置LayoutAnimationController屬性:
listView.setLayoutAnimation(lac);



MainActivity.java

package com.yx.animations04;


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import com.yx.animations04.R;

import android.os.Bundle;
import android.app.Activity;
import android.app.ListActivity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.animation.AccelerateDecelerateInterpolator;
import android.view.animation.AlphaAnimation;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
import android.view.animation.AnimationUtils;
import android.view.animation.LayoutAnimationController;
import android.view.animation.RotateAnimation;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;

public class MainActivity extends ListActivity {

private Button button=null;
private ListView listView = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

button = (Button) findViewById(R.id.buttonId);
button.setOnClickListener(new buttonListener());

listView = getListView();
}

private ListAdapter buildListAdapter(){
List> list = new ArrayList>();
HashMap m1 = new HashMap();
m1.put("name", "張三");
m1.put("gender","女");

HashMap m2 = new HashMap();
m2.put("name", "李四");
m2.put("gender","女");

HashMap m3 = new HashMap();
m3.put("name", "王五");
m3.put("gender","男");

list.add(m1);
list.add(m2);
list.add(m3);

SimpleAdapter simpleAdapter = new SimpleAdapter(MainActivity.this, list,
R.layout.item, new String[]{"name","gender"}, new int[]{R.id.name,R.id.gender});
return simpleAdapter;
}

private class buttonListener implements OnClickListener{
@Override
public void onClick(View v) {
listView.setAdapter(buildListAdapter());

//在代碼中實現,這裡不需要list_anim_layout.xml文件
Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.list_anim);
LayoutAnimationController lac = new LayoutAnimationController(animation);
lac.setOrder(LayoutAnimationController.ORDER_NORMAL);
listView.setLayoutAnimation(lac);
}
}
}


list_anim_layout.xml


android:delay="0.5"
android:animationOrder="normal"
android:animation="@anim/list_anim"
>


list_anim.xml


android:interpolator="@android:anim/accelerate_interpolator">
android:toAlpha="0.0"
android:duration="2000">

activity_main.xml
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity" >



android:id="@id/android:list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scrollbars="vertical"
>


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved