Android基于hover组件实现监控鼠标移动事件的方法
本文实例讲述了Android基于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事件。
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
相关推荐
-
Android中三种注入事件方法比较
方法1:使用内部APIs 该方法和其他所有内部没有向外正式公布的APIs一样存在它自己的风险.原理是通过获得WindowManager的一个实例来访问injectKeyEvent/injectPointerEvent这两个事件注入方法. 复制代码 代码如下: IBinder wmbinder = ServiceManager.getService( "window" ); IWindowManager m_WndManager = IWindowManager.Stub.asInter
-
封装的android监听手指左右滑动屏幕的事件类分享
左右滑动是智能手机最常用的动作,在此简单的封装了一下,以后直接拿来用就可以了. 简单的只需要几行就可以了,下面那个类是封装好了的. package com.example.test; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.util.Log; import android.widget.RelativeLayout; public c
-
Android中判断网络连接是否可用及监控网络状态
获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 1)判断是否有网络连接 复制代码 代码如下: public boolean isNetworkConnected(Context context) { if (context != null) { ConnectivityManager mConn
-
android监听返回按钮事件的方法
本文实例讲述了android监听返回按钮事件的方法.分享给大家供大家参考.具体如下: 用户在点击手机的返回按钮时,默认是推出当前的activty,但是有时用户不小心按到返回,所以需要给用户一个提示,这就需要重写onkeydown事件,实现的效果如下: java代码如下: @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.l
-
Android编程实现监控apk安装,卸载,替换的方法
本文实例讲述了Android编程实现监控apk安装,卸载,替换的方法.分享给大家供大家参考,具体如下: public class GetBroadcast extends BroadcastReceiver { private static GetBroadcast mReceiver = new GetBroadcast(); private static IntentFilter mIntentFilter; public static void registerReceiver(Conte
-
Android中button实现onclicklistener事件的两种方式
复制代码 代码如下: package com.demos; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class GetScreenActivity extends Activity { private Button fi
-
android 键盘事件和屏幕事件的运行原理及交互实现
当在自定义View或者做游戏的时候,我们常常会用到键盘触发事件和屏幕触发事件!在自定义的View里的键盘触发事件(比如:onKeyDown(int keyCode, KeyEvent event))和屏幕触发事件(onTouchEvent(MotionEvent event))和activity里的键盘触发事件(比如:onKeyDown(int keyCode, KeyEvent event))和屏幕触发事件(onTouchEvent(MotionEvent event))是怎么样交互的呢?是怎
-
android监控sim卡有没有服务示例(sim卡管理)
复制代码 代码如下: public class UniteqService {public static final String LOG_TAG = "UniteqService";public boolean DEBUG = true;private boolean hasService = false;//是否有服务private PhoneStateListener[] mPhoneStateListener;//监听双卡private TelephonyManager mPh
-
Android中实现监听ScrollView滑动事件
时候我们需要监听ScroView的滑动情况,比如滑动了多少距离,是否滑到布局的顶部或者底部.可惜的是SDK并没有相应的方法,不过倒是提供了一个 复制代码 代码如下: protected void onScrollChanged(int x, int y, int oldx, int oldy) 方法,显然这个方法是不能被外界调用的,因此就需要把它暴露出去,方便使用.解决方式就是写一个接口, 复制代码 代码如下: package com.example.demo1; public inter
-
Android按钮单击事件的四种常用写法总结
很多学习Android程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的就是对控件响应事件的写法的不同.因此本文就把这些写法总结一下,比较下各种写法的优劣,希望对大家灵活地选择编码方式可以有一定的参考借鉴价值. xml文件代码如下: <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_conte
-
浅析Android 模拟键盘鼠标事件
通过Socket + Instrumentation实现模拟键盘鼠标事件主要通过以下三个部分组成:Socket编程:实现PC和Emulator通讯,并进行循环监听Service服务:将Socket的监听程序放在Service中,从而达到后台运行的目的.这里要说明的是启动服务有两种方式,bindService和startService,两者的区别是,前者会使启动的Service随着启动Service的Activity的消亡而消亡,而startService则不会这样,除非显式调用stopServi
-
android Textview文字监控(Textview使用方法)
1.首先给用户添加一个textchangedlistener2.然后再写一个文字变化的监视器 复制代码 代码如下: mobile_et.addTextChangedListener(textWatcher); /** * 实时监听用户输入的手机号,输入至最后一位后,计算折扣后的金额 */ TextWatcher textWatcher = new TextWatcher() { @Override public void onTextChanged(CharS
-
Android编程实现监控各个程序流量的方法
本文实例讲述了Android编程实现监控各个程序流量的方法.分享给大家供大家参考,具体如下: public void getAppTrafficList(){ //获取所有的安装在手机上的应用软件的信息,并且获取这些软件里面的权限信息 PackageManager pm=getPackageManager();//获取系统应用包管理 //获取每个包内的androidmanifest.xml信息,它的权限等等 List<PackageInfo> pinfos=pm.getInstalledPac
-
Android Touch事件分发过程详解
本文以实例形式讲述了Android Touch事件分发过程,对于深入理解与掌握Android程序设计有很大的帮助作用.具体分析如下: 首先,从一个简单示例入手: 先看一个示例如下图所示: 布局文件 : <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id=&
随机推荐
- 玩转python爬虫之正则表达式
- js代码实现点击按钮出现60秒倒计时
- rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
- Python中文件操作简明介绍
- Yii调试SQL的常用方法
- Linux环境mysql5.7.12安装教程
- php微信公众号开发(2)百度BAE搭建和数据库使用
- java实现网页解析示例
- 一个已封装好的漂亮进度条
- js实现图片加载时候逐渐出现的杂色效果
- jQuery each函数源码分析
- MongoDB学习笔记之GridFS使用介绍
- 图文详解MySQL中两表关联的连接表如何创建索引
- jQuery实现统计输入文字个数的方法
- bootstrap和jQuery.Gantt的css冲突 如何解决
- Gridview自动排序功能的实现
- gridview调整单元格宽度的方法
- 如何调试异步加载页面里包含的js文件
- asp.net core配置文件加载过程的深入了解
- linux下svn版本控制的常用命令大全