为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

android hover监控鼠标移动事件

2018-02-22 6页 doc 22KB 35阅读

用户头像

is_574951

暂无简介

举报
android hover监控鼠标移动事件android hover监控鼠标移动事件 android hover 监控鼠标移动事件 分类: android移动开发 2012-02-10 18:29 1049人阅读 评论(3) 收藏 举报 android之前对于鼠标光标事件的监控非常少,4.0之后多了一个hover的组件,此组件可以监控鼠标光标在view上的变化。 代码如下: [java] view plaincopyprint? 1. public class HoverDemoActivity extends Activity { 2. private...
android hover监控鼠标移动事件
android hover监控鼠标移动事件 android hover 监控鼠标移动事件 分类: android移动开发 2012-02-10 18:29 1049人阅读 评论(3) 收藏 举报 android之前对于鼠标光标事件的监控非常少,4.0之后多了一个hover的组件,此组件可以监控鼠标光标在view上的变化。 代码如下: [java] view plaincopyprint? 1. public class HoverDemoActivity extends Activity { 2. private Button btnBottom; 3. @Override 4. public void onCreate(Bundle savedInstanceState) { 5. super.onCreate(savedInstanceState); 6. setContentView(R.layout.main); 7. btnBottom = (Button) findViewById(R.id.btn_bottom); 8. 9. btnBottom.setOnHoverListener(new OnHoverListener() { 10. @Override 11. public boolean onHover(View v, MotionEvent event) { 12. int what = event.getAction(); 13. switch(what){ 14. case MotionEvent.ACTION_HOVER_ENTER: //鼠标进入view 15. System.out.println("bottom ACTION_HOVER_ENTER"); 16. break; 17. case MotionEvent.ACTION_HOVER_MOVE: //鼠标在view上 18. System.out.println("bottom ACTION_HOVER_MOVE"); 19. break; 20. case MotionEvent.ACTION_HOVER_EXIT: //鼠标离开view 21. System.out.println("bottom ACTION_HOVER_EXIT"); 22. break; 23. } 24. return false; 25. } 26. }); 27. } 28. } 当view隐藏时,无法监控点击,触 摸和hover事件。 android hover监控鼠标移动事件 (2012-05-16 12:14:07) 转载? 分类: 技术交流 标签: listview hover 鼠标 杂谈 android之前对于鼠标光标事件的监控非常少,4.0之后多了一个hover的 组件,此组件可以监控鼠标光标在view上的变化。 代码如下: public class HoverDemoActivity extends Activity { private Button btnBottom; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btnBottom = (Button) findViewById(R.id.btn_bottom); btnBottom.setOnHoverListener(new OnHoverListener() { @Override public boolean onHover(View v, MotionEvent event) { int what = event.getAction(); switch(what){ case MotionEvent.ACTION_HOVER_ENTER: //鼠标进入view System.out.println("bottom ACTION_HOVER_ENTER"); break; case MotionEvent.ACTION_HOVER_MOVE: //鼠标在view上 System.out.println("bottom ACTION_HOVER_MOVE"); break; case MotionEvent.ACTION_HOVER_EXIT: //鼠标离开view System.out.println("bottom ACTION_HOVER_EXIT"); break; } return false; } }); } } 当view隐藏时,无法监控点击,触摸和hover事件。 以上来源于 下面做点补充:listview焦点跟随鼠标移动 在重载BaseAdapter的适配器中的getView方法中对行视图进行hover监听, 代码如下: @Override public View getView(int position, View convertView, ViewGroup parent) { ListItemViewHolder holder = null; // 清空临时变量 if (convertView == null) { // 若行未初始化 convertView = layoutInflater.inflate(R.layout.radio_selection_mode_list_item, null); // 通过flater初始化行视图 convertView.setOnHoverListener(new MyOnHoverListener()); holder = new ListItemViewHolder(); // 并将行视图的3个子视 图引用放到tag中 //...... convertView.setTag(holder); } else { holder = (ListItemViewHolder) convertView.getTag(); // 若 行已初始化,直接从tag属性获得子视图的引用 } //...... return convertView; } class MyOnHoverListener implements OnHoverListener{ @Override public boolean onHover(View arg0, MotionEvent event) { // TODO Auto-generated method stub int what = event.getAction(); switch(what){ case MotionEvent.ACTION_HOVER_ENTER: //鼠标进入 view int pos = (int)arg0.getY() / 75; Bundle mBundle = new Bundle(); mBundle.putInt("position", pos); Message msg = new Message(); msg.what = FileBrowserActivity.MSG_MOUSE_MOVE; msg.setData(mBundle); fileBrowserActivity.activityHandler.sendMessage(msg);//可以刷新listview 设置焦点 break; case MotionEvent.ACTION_HOVER_MOVE: //鼠标在view上 break; case MotionEvent.ACTION_HOVER_EXIT: //鼠标离开view break; } return false; } } activity收到消息后作出处理: case MSG_MOUSE_MOVE: int pos = msg.getData().getInt("position"); browserViewHolder.fileBrowserListView.setFocusable(true); browserViewHolder.fileBrowserListView.requestFocus(); browserViewHolder.fileBrowserListView.setSelection(pos); break;
/
本文档为【android hover监控鼠标移动事件】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索