android 处理鼠标滚轮事件


android处理鼠标滚轮事件,并不是如下函数

1)  public boolean onKeyDown(int keyCode, KeyEvent event)  

2)     public boolean dispatchKeyEvent(KeyEvent event) 

3)     public boolean onTouchEvent(MotionEvent event)


是如下函数

publicboolean onGenericMotionEvent(MotionEvent event);


所有View和Activity都可重写该函数,来自己处理滚轮事件,

如下代码:


/**
* Implement this method to handle generic motion events.
* 实现该方法来处理一般的MotionEvent;
* 一般的motion events 描述,操纵杆的动作,鼠标honver、滚轮等
* 
* @param event The generic motion event being processed.
* @return True if the event was handled, false otherwise.
 */
	
@Override
public boolean onGenericMotionEvent(MotionEvent event) {
//The input source is a pointing device associated with a display.
//输入源为可显示的指针设备,如:mouse pointing device(鼠标指针),stylus pointing device(尖笔设备)
if (0 != (event.getSource() & InputDevice.SOURCE_CLASS_POINTER)) {	
  switch (event.getAction()) {
	// process the scroll wheel movement...处理滚轮事件
	case MotionEvent.ACTION_SCROLL:	
	//获得垂直坐标上的滚动方向,也就是滚轮向下滚
	if( event.getAxisValue(MotionEvent.AXIS_VSCROLL) < 0.0f){	
		Log.i("fortest::onGenericMotionEvent", "down" );
			}
		//获得垂直坐标上的滚动方向,也就是滚轮向上滚
		else{
			Log.i("fortest::onGenericMotionEvent", "up" );
		}
			return true;
		}
	}
	return super.onGenericMotionEvent(event);
}


转载请注明出处,jiese1990。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值