关闭

Gallery去除惯性、半屏翻页

2027人阅读 评论(1) 收藏 举报

问题描述:

有时候,我们不需要Gallery的惯性,如何去掉Gallery的惯性?


解决方法:

通过继承Gallery,并重写一些方法,自定义Gallery特性。


import android.content.Context;
import android.util.AttributeSet;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.widget.Gallery;

public class DetailGallery extends Gallery {

	public DetailGallery(Context context, AttributeSet attrSet) {
		super(context, attrSet);
	}

	private boolean isScrollingLeft(MotionEvent e1, MotionEvent e2) {
		return e2.getX() > e1.getX();
	}

	@Override
	public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
			float velocityY) {
		int kEvent;
		if (isScrollingLeft(e1, e2)) {
			// Check if scrolling left
			kEvent = KeyEvent.KEYCODE_DPAD_LEFT;
		} else {
			// Otherwise scrolling right
			kEvent = KeyEvent.KEYCODE_DPAD_RIGHT;
		}
		onKeyDown(kEvent, null);
		return true;
	}
}


注意,在xml文件中,使用自定义的DetailGallery代替默认的Gallery。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:118562次
    • 积分:1554
    • 等级:
    • 排名:千里之外
    • 原创:43篇
    • 转载:0篇
    • 译文:0篇
    • 评论:20条
    文章分类
    最新评论