当前位置: 编程技术>移动开发
本页文章导读:
▪关于onTouch跟onClick事件处理机制和关系 关于onTouch和onClick事件处理机制和关系
View的onTouch,onClick,onLongClick事件发生先后顺序和关联:一,onTouch返回false首先是onTouch事件的down事件发生,此时,如果长按,触发onLongClick事件;然.........
▪ 关于怎么判断手机ROOT 关于如何判断手机ROOT
在Android中,虽然我们可以通过Runtime.getRuntime().exec("su")的方式来判断一个手机是否Root,但是该方式会弹出对话框让用户选择是否赋予该应用程序Root权限,有点不友好.........
▪ 乐玩拼图 小弟我自己开发的第二款游戏 乐玩拼图 我自己开发的第二款游戏
乐玩拼图,我自己开发的第二款游戏拼图游戏是一款经典的游戏,从最古老的拼板,到现在的APP游戏,都见证了拼图游戏的辉煌,它的玩法很简单,玩.........
[1]关于onTouch跟onClick事件处理机制和关系
来源: 互联网 发布时间: 2014-02-18
关于onTouch和onClick事件处理机制和关系
View的onTouch,onClick,onLongClick事件发生先后顺序和关联:
一,onTouch返回false
首先是onTouch事件的down事件发生,此时,如果长按,触发onLongClick事件;
然后是onTouch事件的up事件发生,up完毕,最后触发onClick事件。
二,onTouch返回true
首先是onTouch事件的down事件发生,然后是onTouch事件的up事件发生;期间不触发onClick和onLongClick事件
三,onTouch:down返回true,up返回false:结果同二。
机制分析:
onTouch事件中:down事件返回值标记此次事件是否为点击事件(返回false,是点击事件;返回true,不记为点击事件),而up事件标记此次事件结束时间,也就是判断是否为长按。
只要当down返回true时候,系统将不把本次事件记录为点击事件,也就不会触发onClick或者onLongClick事件了。因此尽管当up的时候返回false,系统也不会继续触发onClick事件了。
四,onTouch:down返回false,up返回true:
首先是onTouch事件的down事件发生,此时:
长按,触发onLongClick事件,然后是onTouch事件的up事件发生,完毕。
短按,先触发onTouch的up事件, 到一定时间后,自动触发onLongClick事件。
机制分析:
onTouch事件中:down事件返回值标记此次事件是否为点击事件(返回false,是点击事件;返回true,不记为点击事件),而up事件标记此次事件结束时间,也就是判断是否为长按。
当down返回false,标记此次事件为点击事件,而up返回了true,则表示此次事件一直没有结束,也就是一直长按下去了,达到长按临界时间后,自然触发长按事件,而onClick事件没有触发到。
View的onTouch,onClick,onLongClick事件发生先后顺序和关联:
一,onTouch返回false
首先是onTouch事件的down事件发生,此时,如果长按,触发onLongClick事件;
然后是onTouch事件的up事件发生,up完毕,最后触发onClick事件。
二,onTouch返回true
首先是onTouch事件的down事件发生,然后是onTouch事件的up事件发生;期间不触发onClick和onLongClick事件
三,onTouch:down返回true,up返回false:结果同二。
机制分析:
onTouch事件中:down事件返回值标记此次事件是否为点击事件(返回false,是点击事件;返回true,不记为点击事件),而up事件标记此次事件结束时间,也就是判断是否为长按。
只要当down返回true时候,系统将不把本次事件记录为点击事件,也就不会触发onClick或者onLongClick事件了。因此尽管当up的时候返回false,系统也不会继续触发onClick事件了。
四,onTouch:down返回false,up返回true:
首先是onTouch事件的down事件发生,此时:
长按,触发onLongClick事件,然后是onTouch事件的up事件发生,完毕。
短按,先触发onTouch的up事件, 到一定时间后,自动触发onLongClick事件。
机制分析:
onTouch事件中:down事件返回值标记此次事件是否为点击事件(返回false,是点击事件;返回true,不记为点击事件),而up事件标记此次事件结束时间,也就是判断是否为长按。
当down返回false,标记此次事件为点击事件,而up返回了true,则表示此次事件一直没有结束,也就是一直长按下去了,达到长按临界时间后,自然触发长按事件,而onClick事件没有触发到。
[2] 关于怎么判断手机ROOT
来源: 互联网 发布时间: 2014-02-18
关于如何判断手机ROOT
在Android中,虽然我们可以通过Runtime.getRuntime().exec("su")的方式来判断一个手机是否Root,
但是该方式会弹出对话框让用户选择是否赋予该应用程序Root权限,有点不友好。
其实我们可以在环境变量$PATH所列出的所有目录中查找是否有su文件来判断一个手机是否Root。
当然即使有su文件,也并不能完全表示手机已经Root,但是实际使用中作为一个初略的判断已经很好了。
另外出于效率的考虑,我们可以在代码中直接把$PATH写死。
在Android中,虽然我们可以通过Runtime.getRuntime().exec("su")的方式来判断一个手机是否Root,
但是该方式会弹出对话框让用户选择是否赋予该应用程序Root权限,有点不友好。
其实我们可以在环境变量$PATH所列出的所有目录中查找是否有su文件来判断一个手机是否Root。
当然即使有su文件,也并不能完全表示手机已经Root,但是实际使用中作为一个初略的判断已经很好了。
另外出于效率的考虑,我们可以在代码中直接把$PATH写死。
private final static int kSystemRootStateUnknow=-1; private final static int kSystemRootStateDisable=0; private final static int kSystemRootStateEnable=1; private static int systemRootState=kSystemRootStateUnknow; public static boolean isRootSystem() { if(systemRootState==kSystemRootStateEnable) { return true; } else if(systemRootState==kSystemRootStateDisable) { return false; } File f=null; final String kSuSearchPaths[]={"/system/bin/","/system/xbin/","/system/sbin/","/sbin/","/vendor/bin/"}; try{ for(int i=0;i<kSuSearchPaths.length;i++) { f=new File(kSuSearchPaths[i]+"su"); if(f!=null&&f.exists()) { systemRootState=kSystemRootStateEnable; return true; } } }catch(Exception e) { }
[3] 乐玩拼图 小弟我自己开发的第二款游戏
来源: 互联网 发布时间: 2014-02-18
乐玩拼图 我自己开发的第二款游戏
乐玩拼图,我自己开发的第二款游戏
拼图游戏是一款经典的游戏,从最古老的拼板,到现在的APP游戏,都见证了拼图游戏的辉煌,它的玩法很简单,玩家只需要将图片恢复原样即可过关。乐玩拼图更加注重玩家的互动性,特色制作了自制拼图的功能,玩家可以通过手机照相来获得一张新的拼图,或者从相簿,SD卡中选择一张图片作为新的拼图,试想一下,你给你的男女朋友照了一张相,那么你可以用这张相来作为拼图,看你能否拼图你心中的那个TA?当然玩家在游戏里可以很方便的设置游戏的声音,拼图来源,难易程度,让您畅游拼图世界
乐玩拼图,我自己开发的第二款游戏
拼图游戏是一款经典的游戏,从最古老的拼板,到现在的APP游戏,都见证了拼图游戏的辉煌,它的玩法很简单,玩家只需要将图片恢复原样即可过关。乐玩拼图更加注重玩家的互动性,特色制作了自制拼图的功能,玩家可以通过手机照相来获得一张新的拼图,或者从相簿,SD卡中选择一张图片作为新的拼图,试想一下,你给你的男女朋友照了一张相,那么你可以用这张相来作为拼图,看你能否拼图你心中的那个TA?当然玩家在游戏里可以很方便的设置游戏的声音,拼图来源,难易程度,让您畅游拼图世界
最新技术文章: