设置android,ImageSwitcher左右滑动的动画效果 .

private class MyGuestureListener extends SimpleOnGestureListener {
		@Override
		public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
				float velocityY) {
			int position = ga.getSelectedItemPosition();
			if (e1.getRawX() - e2.getRawX() > 20) {
				if (++position == ga.getCount()) {// 自右向左
					position = 0;
				}
				is.setInAnimation(AnimationUtils.loadAnimation(
						BrosePhotoActivity.this, R.anim.slide_right_in));
				is.setOutAnimation(AnimationUtils.loadAnimation(
						BrosePhotoActivity.this, R.anim.slide_left_out));
			} else if (e2.getRawX() - e1.getRawX() > 20) {// //前一张
				if (--position < 0) {
					position = ga.getCount() - 1;
				}
				is.setInAnimation(AnimationUtils.loadAnimation(
						BrosePhotoActivity.this, R.anim.slide_left_in));
				is.setOutAnimation(AnimationUtils.loadAnimation(
						BrosePhotoActivity.this, R.anim.slide_right_out));

			}
			ga.setSelection(position);

			return super.onFling(e1, e2, velocityX, velocityY);
		}
		
	}

 

重要的是这四个效果文件需要自己拷贝到res/anim文件夹

位置在sdk\platforms\android-4.2\data\res\anim

如果直接用android.R.anim.slide_in_left和android.R.anim.slide_out_right

效果也有问题,表现为会有一个缩小放大的效果,不知道为什么拷到本地资源里就ok了

posted @ 2013-03-24 16:07  mao2012  阅读(805)  评论(0)    收藏  举报