package com.kaixin.android.view;
import android.content.Context;
import android.util.AttributeSet;
import android.util.Log;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.widget.Gallery;
public class DetailGallery extends Gallery {
public DetailGallery(Context context, AttributeSet attrSet) {
// TODO Auto-generated constructor stub
super(context, attrSet);
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
// TODO Auto-generated method stub
// 只需要去除翻页惯性 - 方法1:
// return super.onFling(e1, e2, 0, velocityY);
// 只需要去除翻页惯性 - 方法2:
// return false;
// 实现短距离滚动:
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;
}
private boolean isScrollingLeft(MotionEvent e1, MotionEvent e2) {
return e2.getX() > e1.getX();
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
try {
return super.onInterceptTouchEvent(ev);
} catch (IllegalArgumentException e) {
//不理会
return false;
}catch(ArrayIndexOutOfBoundsException e ){
//不理会
return false;
}
}
}