Android连续点击多次事件的实现

链接:http://77blogs.com/?p=538

有时候我们需要实现这样的场景,类似进入开发者模式,即多次点击后执行操作。

首先我们先看一个方法:

System提供的一个静态方法arraycopy(),我们可以使用它来实现数组之间的复制。

public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length);

src:源数组;
srcPos:源数组要复制的起始位置;
dest:目的数组;
destPos:目的数组放置的起始位置;
length:复制的长度。
注意:src and dest都必须是同类型或者可以进行转换类型的数组.


 

首先我们定义次数,规定的有效时间,还有对应的数组,即我们要在一秒钟内点击4次才有效


 

思路:首先我们点击的时候都将数组向左移动一位,将时间赋值给最后一位,从上面的代码中我们可以看出当我们点击了四次,那么最后一位就已经被移到了第一位,然后我们比较时间:

mHits[0] >= (SystemClock.uptimeMillis() – DURATION)

如果是在我们规定的时间内,那么就生效,执行我们所要的操作。

 

SystemClock.uptimeMillis():手机开机到现在的时间。

注意:执行操作后需要从新初始化数组:mHits = new long[COUNTS];否则点击第六次第七次的时候也会触发事件。

Android ADB Server启动失败

有时候会突然间出现android 的adb启动失败,百度之后发现是因为5037端口被占用了。该端口是adb需要的端口。

方法:

找到是哪个程序占用了该端口,然后手动将该程序关闭。

 

1、进入到SDK的platform-tools目录,然后打开cmd窗口:

输入命令:netstat -aon|findstr “5037”

可以看到是进程Id为10736的进程占用了该端口。

 

2、查看task:

输入命令:tasklist|findstr “10736”

发现占用该端口的是adb(这里只是举个例子,这是在正常的情况,所以是adb占用端口,如果不正常情况下是被其它进程占用的)。

打开任务管理器将进程关闭。

 

转载请标明出处:http://77blogs.com/?p=539

Android Studio撤销与SVN的关联

转载请标明出处:http://77blogs.com/?p=542

为何会记录这一个问题,主要是在做项目的过程中出现了一个奇怪的现象,就是直接在文件目录下使用svn上传文件的话,可以看到该目录是与SVN相关联的,可是到了用Android Studio上传代码的时候却发现Android Studio是与Git相关联的。

最终发现可以使用以下方法解决:

在Android Studio上使用Project模式查看代码,在.idea文件夹,在该文件夹下找到vcs.xml。

打开发现如下:

我当时在下面还有很多代码,有一个句是 vcs=”Git”,问题就是出在这里,我把下面的都删了,只保留上面图片的代码就OK了,当然,如果想让Android Studio与SVN取消关联,那么只要将vcs = “svn”改为vcs=“”就OK了。

 

SVN拉取后撤销,恢复未拉取之前的状态

转载请标明:http://77blogs.com/?p=544

在做项目的时候,一不小心将服务器上的代码覆盖了本地的代码,本来可以使用log查看svn上的历史列表,然后选中某个选项,右键,点击revert to this vision来使代码恢复到任意一个版本。

可是关键是本地的代码还没有上传到svn上,也就是说我们要恢复的代码svn上还没有,那么怎么办呢?

1、右键选中你的项目,按照下图所示选中本地历史:

2、打开历史界面后便可以看到你本地的修改历史记录:

3、选中你想恢复到的某个记录,右键:

点击Revert就可以了

SVN上传的时候没法显示文件名,只显示后缀名

之前在用SVN上传android代码的时候,发现上传列表上的文件没法显示名字,只显示了后缀名,就像这样:

各种疑惑,最终发现解决方法:

右键单击操作栏的status:

然后在出现的选项里面将filename勾上就可以了。

 

转载请标明出处:http://77blogs.com/?p=548 

 

ListView刷新某一项Item

ListView现在已经很少被使用,但还是在这里列出来说一下,有时候我们仅仅需要改变listView的某个Item,如果调用adapter的notifyDataSetChanged()方法效率不高,并且可能会出现内容闪动,那么我们怎么刷新某一个特定的item呢?

在这里我们以刷新第一个item为例,刷新其它item类似。


 

转载请标明出处:http://77blogs.com/?p=551