Shake Android ui elements

Android里的大部分widget都可以加进动画,下面是一个小示例:

 

先在res里创建anim文件夹,在里面创建动画配置文件1,shake.xml:

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
	android:fromXDelta="0" 
	android:toXDelta="10" 
	android:duration="1000" 
	android:interpolator="@anim/cycle" 
/>

 

接下来是第二个动画配置文件cycle.xml

<?xml version="1.0" encoding="utf-8"?>
<cycleInterpolator xmlns:android="http://schemas.android.com/apk/res/android" 
	android:cycles="10"<!--表示来回晃动10次--> 
/>

 

 调用,效果是你按下按钮(id为shakeIt),屏幕上的图片(id为beShake)就来回晃动。不一定是图片,其他的TextView,botton等都可以!

package com.ray.shake;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;

public class Shake extends Activity implements OnClickListener{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button btn = (Button)findViewById(R.id.shakeIt);
        btn.setOnClickListener(this);
        
    }

	@Override
	public void onClick(View v) {
		// TODO Auto-generated method stub
		Animation anim =AnimationUtils.loadAnimation(this, R.anim.shake);
		findViewById(R.id.beShake).startAnimation(anim);
		
	}
}

 

你可能感兴趣的:(android,UI,xml,OS)