android水平 listview,Android中的水平ListView?

代码不允许使用onClickListener在Item子项目上(从不调用回调函数)。为了找到一个解决方案,我已经挣扎了一段时间,我决定在这里发布您需要在代码中修改的内容(如果有人需要的话)。

而不是重写dispatchTouchEvent覆盖onTouchEvent..使用相同的代码dispatchTouchEvent并删除该方法(您可以在这里读取这两种方法之间的差异。http:/developer.android.com/GuideTems/ui/UI-vents.html#EventHandler )@Overridepublic boolean onTouchEvent(MotionEvent event) {

boolean handled = mGesture.onTouchEvent(event);

return handled;}

然后,添加以下代码,该代码将决定从Item子项目中窃取事件,并将其交给我们的onTouchEvent或者让他们来处理。@Overridepublic boolean onInterceptTouchEvent(MotionEvent ev) {

switch( ev.getActionMasked() ){

case MotionEvent.ACTION_DOWN:

mInitialX = ev.getX();

mInitialY = ev.getY();

return false;

case MotionEvent.ACTION_MOVE:

float deltaX = Math.abs(ev.getX() - mInitialX);

float deltaY = Math.abs(ev.getY() - mInitialY);

return ( deltaX > 5 || deltaY > 5 );

default:

return super.onInterceptTouchEvent(ev);

}}

最后,不要忘记声明类中的变量:private float mInitialX;private float mInitialY;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值