Android支持单词提示搜索框的网络请求策略
16lz
2021-01-23
android:
管理类代码如下:
public class KapSearchRunnableHelper implements Runnable { private Runnable runnable = null; public KapSearchRunnableHelper(Runnable able){ runnable = able; } private KapSearchRunnableHelper(){}//私有化 Handler handler = new Handler(); public void pushKeyWord(){ handler.removeCallbacks(this);// 移除请求 handler.postDelayed(this,500);// 添加请求 } @Override public void run() { //此处发起Http请求 runnable.run(); }}
使用如下:
final KapSearchRunnableHelper searchRunnableHelper = new KapSearchRunnableHelper(new Runnable() { @Override public void run() { postList(0);//网络请求 } }); editText.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { } @Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { //防止铺天盖地的请求 SearchRunnable管理 searchRunnableHelper.pushKeyWord(); } @Override public void afterTextChanged(Editable editable) { } });
参考:
Android支持单词提示搜索框的网络请求策略
iOS:
代码如下:
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText { //实时搜索(连续输入的时候不请求) [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(postList:) object:searchBar]; [self performSelector:@selector(postList:) withObject:searchBar afterDelay:0.1];}
思路都是一样的~~~
更多相关文章
- Android kill app Process 结束进程代码
- Android 工具代码
- Android 代码片段
- 第一代Android壳源码--某某公司早期壳代码加固原理分析
- android 显示 网络图片
- Android 检测网络是否可用
- Android 获取缩略图,网络视频,或者本地视频