转载请注明出处,谢谢:http://blog.youkuaiyun.com/harryweasley/article/details/50395209
假如你要做这样的一个功能,通过在编辑框输入一些字符进行搜索,输入完成后,再显示搜索结果,在输入的过程中,并不想一直通知服务器来获取数据。
假设这样的一个场景,你想搜索“1024”这个游戏,那么你肯定不想当输入1 的时候,就和服务器进行一次沟通吧,如果这样对服务器压力太大了,你肯定希望的是当输完1024后,再和服务器进行交互,显示出数据。
本博客,就是监听editText输入完成后,然后再和服务器进行交互,获取数据,大大减小服务器的压力。
以下,就是具体的实现代码了:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
上面,主要用到了两点技术
1.
handler.postDelayed(delayRun, 800) 延迟800ms执行线程
2.
handler.removeCallbacks(delayRun); 移除当前MessageQueue里面的待执行的线程

本文介绍了一种在Android应用中实现EditText输入监听的方法,通过延时机制确保只有当用户完成输入后才触发搜索请求,有效减轻服务器负担。
7711





