一 、 利用View自身的setAnimation来实现动画(TextView、imageView、ListView等都可以实现)

java代码:

public void UpdateViewContent(){TextView txtview = (TextView)findViewById(R.id.content_view);txtview.setText(MyGetNextText());txtview.setAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_in));}

 

Xml代码:

<?xml version="1.0" encoding="utf-8"?>


关键代码:

txtview.setAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_in));

 

二、ViewFlipper实现左右滑动效果转载自(http://www.cnblogs.com/hanyonglu/archive/2012/02/13/2349827.html

java代码:

package com.android.flip;import android.app.Activity;import android.os.Bundle;import android.view.GestureDetector;import android.view.MotionEvent;import android.view.View;import android.view.GestureDetector.OnGestureListener;import android.view.animation.AnimationUtils;import android.widget.ImageView;import android.widget.ViewFlipper;/** * Android实现左右滑动效果 * @Description: Android实现左右滑动效果 * @File: MainActivity.java * @Package com.android.flip * @Author Hanyonglu * @Date 2012-02-12 上午10:44:04 * @Version V1.0 */public class MainActivity extends Activity implements OnGestureListener {    private ViewFlipper flipper;    private GestureDetector detector;        /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                detector = new GestureDetector(this);        flipper = (ViewFlipper) this.findViewById(R.id.ViewFlipper1);        flipper.addView(addImageView(R.drawable.one));        flipper.addView(addImageView(R.drawable.two));        flipper.addView(addImageView(R.drawable.three));        flipper.addView(addImageView(R.drawable.four));        flipper.addView(addImageView(R.drawable.five));        //添加Layout        //flipper.addView(addView(R.layout.layout1));//选择第几个view//viewFlipper.setDisplayedChild(0);    }        private View addImageView(int id) {        ImageView iv = new ImageView(this);        iv.setImageResource(id);        return iv;    }        @Override    public boolean onTouchEvent(MotionEvent event) {        // TODO Auto-generated method stub        return this.detector.onTouchEvent(event);    }        @Override    public boolean onDown(MotionEvent e) {        // TODO Auto-generated method stub        return false;    }        @Override    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,            float velocityY) {        if (e1.getX() - e2.getX() > 120) {            this.flipper.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_in));            this.flipper.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_out));            this.flipper.showNext();            return true;        } else if (e1.getX() - e2.getX() < -120) {            this.flipper.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.push_right_in));            this.flipper.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.push_right_out));            this.flipper.showPrevious();            return true;        }                return false;    }        @Override    public void onLongPress(MotionEvent e) {        // TODO Auto-generated method stub            }        @Override    public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,            float distanceY) {        // TODO Auto-generated method stub        return false;    }        @Override    public void onShowPress(MotionEvent e) {        // TODO Auto-generated method stub            }        @Override    public boolean onSingleTapUp(MotionEvent e) {        // TODO Auto-generated method stub        return false;    }}



 

为了使其滑动时有一定的特效,我们需要加入Animation效果,说到Animation,我们先看下如何在Android中实现自定义Animation。自定义的Animation是以XML格式定义的,定义好的XML文件存放在res/anim中。

  一般的Animation有以下四种类型:
  1. Alpha:渐变透明度动画效果
  2. Scale:渐变尺寸伸缩动画效果
  3. Translate:画面转换位置移动动画效果
  4. Rotate:画面转换位置移动动画效果

push_left_in.xml文件中代码:

<?xml version="1.0" encoding="utf-8"?>          


push_left_out.xml文件中代码:

<?xml version="1.0" encoding="utf-8"?>         


push_right_in.xml文件中代码:

<?xml version="1.0" encoding="utf-8"?> 

push_right_out.xml文件中代码:

<?xml version="1.0" encoding="utf-8"?>         

更多相关文章

  1. android 获取本机号码及应加的权限 代码
  2. Android之ViewPager自动循环播放(轮播)效果实现(超简单)
  3. Android 滤镜效果
  4. 代码设置RelativeLayout相对位置设置
  5. dialog效果
  6. android瀑布流代码
  7. 【Android】监听SDCard安装和卸载的代码片段(测试通过)
  8. 多个按钮左右相互挤压效果

随机推荐

  1. android包重复问题
  2. android根据应用方向自动旋转的自定义vie
  3. Android录音及播放功能实现
  4. Android 文件操作工具类
  5. Unity3d 调用Android震动
  6. Android通过Mainfest设置Theme实现布局全
  7. Android 开发艺术探索 源码地址
  8. android Error inflating class com.goog
  9. Android 自定义控件 按钮滚动选择
  10. Android ExpandableListView 可展开的Lis