我有一个自定义TableLayout
的代码:
public class PageTableLayout extends TableLayout{
private static Context context;
private GestureDetector gDetector;
public PageTableLayout(Context context) {
super(context);
this.context = context;
gDetector = new GestureDetector(context, gesture_listner);
}
public PageTableLayout( Context context, AttributeSet attrs ){
super( context, attrs );
this.context = context;
gDetector = new GestureDetector(context , gesture_listner);
}
@Override
public boolean dispatchTouchEvent(MotionEvent me) {
Log(debug, "dispatchTouchEvent()");
super.dispatchTouchEvent(me);
return gDetector.onTouchEvent(me);
}
private OnGestureListener gesture_listner = new OnGestureListener(){
public boolean onDown(MotionEvent e) {
// TODO Auto-generated method stub
Log(debug, "onDown()..." );
return false;
}
public boolean onFling(MotionEvent start, MotionEvent finish, float velocityX, float velocityY) {
Log.(debug, "onFling()..." );
.....
}
...
}
使用此代码,我无法检测到该onFling
事件(它没有被调用!!!)..有什么建议吗?如果我把它OnGestureListener
放在一个Activity
它的工作原理!TableLayout
包含包含的简单TableRow
元素TextView
。请帮我..