Android EditText实现搜索框实时处理,优化数据请求

1 篇文章 0 订阅
订阅专栏

使用EditText实现搜索框,优化数据请求 ,实现实时搜索展示

image.png

  1. 当EditText内容发生改变时等待1000毫秒,Message携带当前EditText的内容数据通知Hadnler去进行处理

  2. 通过判断handler携带数据和EditText已存在的内容数据是否相同决定是否进行数据请求。

  3. 当handler携带数据不为空并且和EditText已存在内容数据相同时进行网络请求,减少在输入过程中不必要的请求发生

    private final int searchWhat = 1;
    private Handler mHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            if (msg.what == searchWhat) {
                if (msg.obj.toString().equals(etSearch.getText().toString())){//进行判断
                    pageNum = 1;
                    getDataList(pageNum, etSearch.getText().toString());
                }
            }
        }
    };
    
    etSearch.addTextChangedListener(new MyTextWatcher());
    
    List resultDataList;
    public void getDataList(int pageNum,String searchContext){
       ... 请求结果result 省略ListViewAdapter填充部分
       resultDataList = result;
       //通知数据改变
       userSelectAdapter.notifyDataSetChanged();
    }
    
    private class MyTextWatcher implements TextWatcher {
    
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {
        }
        
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
        }
        
        @Override
        public void afterTextChanged(Editable s) {
            if (s.length() != 0 && s.toString().trim().length() != 0) {
                Message msg = Message.obtain();
                msg.what = searchWhat;
                msg.obj = s.toString(); //携带当前值
                mHandler.sendMessageDelayed(msg, 1000);//隔一小段时间发送msg
            } else {
                resultDataList.clear();
                //通知数据改变
                userSelectAdapter.notifyDataSetChanged();
            }
        }
    }
    
Android模糊搜索实现
敲代码的小菜栋
08-03 5262
1. 前言 最近项目中需要做模糊搜索的功能,刚开始觉得很难,但仔细想想也没什么,因为具体的模糊搜索部分是后端提供接口,而我们需要做的就是当搜索框内容发生变化时就执行一次搜索功能而已。 2. 效果图 可以看到 文本框在输入时实时进行搜索搜索没有结果时,底部的结果展示直接隐藏掉 茅台并不坚挺… 3. 思路 搜索框部分使用EditText,通过addTextChangedListener方法来实现对其的监听 接口部分,这里我使用百度的接口,简单的通过Retrofit2来实现网络请求 模糊
Android使用EditText+Listview实现搜索效果(使用room模糊查询)
计蒙不吃鱼的博客
03-25 5693
系列文章目录 Android使用EditText+Listview实现搜索效果(使用room模糊查询) 文章目录系列文章目录前言一、room的模糊查询语句二、布局的简单美化1.Listview去除item间的分割线和滑动的光标2.EditText去除下划线并为键盘回车事件设置一些属性三、EditText对应的回车事件获取四、博主相关文章Listview关于动态搜索关于room 前言 在很久之前发了一篇关于room的增删改查的文章,最近有粉丝问到关于room模糊查询的问题,博主用自己以前写的APP来写一篇
安卓EditText点击后虚拟键盘回车变成搜索和事件
最新发布
2401_84122760的博客
04-20 704
针对Android程序员,我这边给大家整理了一些资料,包括不限于高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!Android前沿技术大纲全套体系化高级架构视频Android高级架构资料、源码、笔记、视频。
EditText实现搜索功能
01-04
EditText + PopupWindow来实现搜索的功能 博客地址:http://www.cnblogs.com/wangfengdange/p/5428113.html
AndroidEditText实现搜索框功能
风飞飘扬的专栏
09-11 8624
效果图 工程目录结构 1.MainActivity.java import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.ListView; import java.util.ArrayLi
基于EditText根据用户输入动态实现自动搜索功能
11-11
基于EditText根据用户输入动态实现自动搜索功能 [注:本内容来自网络,在此分享仅为帮助有需要的网友,如果侵犯了您的权利,麻烦联系我,我会第一时间删除,谢谢您。]
Android利用EditText如何实现搜索框详解
08-27
EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,下面这篇文章主要给大家介绍了关于Android利用EditText如何实现搜索框的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
android edittext 搜索框,Android EditText实现搜索框实时处理优化数据请求
weixin_35980011的博客
05-28 612
使用EditText实现搜索框优化数据请求实现实时搜索展示search.png当EditText内容发生改变时等待500毫秒,Message携带当前EditText的内容数据通知Hadnler去进行处理,通过判断携带数据EditText此时的内容数据是否相同决定是否进行数据请求。减少多余的请求,提高效率。关键代码private static final int MSG_SEARCH = 1...
Android EditText搜索框实现图标居中
08-30
本篇文章主要介绍了Android EditText搜索框实现图标居中,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Android 根据EditText搜索框ListView动态显示数据
09-01
主要介绍了Android 根据EditText搜索框ListView动态显示数据的相关资料,需要的朋友可以参考下
Android EditText实现关键词批量搜索示例
08-31
本篇文章主要介绍了Android EditText实现关键词批量搜索示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Android ListView用EditText实现搜索功能效果
08-31
本篇文章主要介绍了Android ListView用EditText实现搜索功能效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
android 快速检索,Android中如何优化实时搜索
weixin_34622572的博客
06-05 503
前言背景在App开发过程中,搜索功能是必不可少的。一般对于搜索功能,要么是输入一段文字后自己手动点击搜索按钮进行搜索;要么是实时搜索。如果输入框中每一个字符的改变都要去触发网络请求的话,会浪费用户的流量,增大服务器的负载,并且使页面比较卡顿。这显然是不可取的。举一个很简单的例子,用户想要搜索 "ABC" ,如果我们直接用TextWatcher监听里面的afterTextChanged(Edita...
Android实现根据用户输入自动搜索
...
09-05 5659
最近App上线play商店,版本整来整去。下午闲暇之余,一位老友忽然扣我,心情一阵激动。我还以为是要送我中秋月饼,丫的,上来就稀里糊涂表明一堆需求。。。哇凉啊~ 行了,今天我就和大家分享下关于这个突如其来的"中秋好礼": EditText实现自动搜索。自动搜索的含义就是: 当用户输入内容后,在一定的间隔时间内,如果用户没有继续输入则请求服务器查询结果。反之,则等待用户继续输入,直到用户停止后
Android EditText通过软键盘上的搜索键进行搜索
qq_42676548的博客
03-24 610
Android EditText通过软键盘上的搜索键进行搜索 1.相关布局 <EditText android:id="@+id/et_search" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginLeft="@dimen/marg
Edittext 搜索
qq_26500807的博客
04-13 447
<com.pdxx.yxzp.view.ClearEditText android:id="@+id/filter_edit" android:layout_width="match_parent" android:layout_height="@dimen/dp_32" android:layout_margin="@dim...
android 自定义搜索框edittext,在Android中自定义搜索
weixin_30529023的博客
05-25 161
您应该使用自定义搜索视图才能访问工具栏中的EditText(菜单布局中的app:actionViewClass属性).设置TextWathcer后,在afterTextChanged回调内部管理跨度.我写了一些具有基本背景跨度实现的示例.这是解决您的问题的主要概念和起点.请参见下面的示例:menu_main.xml:android:title="search"android:icon="@draw...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • SpringBoot整合JavaMail通过阿里云企业邮箱发送邮件 9276
  • File类中的list方法 6730
  • Docker搭建流程图绘制工具draw.io和GitLab,并配置GitLab作为存储服务器 6537
  • java使用zxing生成二维码,可带logo和底部文字 3948
  • Android EditText实现搜索框实时处理,优化数据请求 3416

分类专栏

  • Java 23篇
  • Android 1篇

最新评论

  • Docker搭建流程图绘制工具draw.io和GitLab,并配置GitLab作为存储服务器

    非尔山尔: 没能解决

  • SpringBoot整合JavaMail通过阿里云企业邮箱发送邮件

    m0_63178724: 可是我是用的阿里云的邮箱推送服务,哪里来登陆密码呢?

  • Docker搭建流程图绘制工具draw.io和GitLab,并配置GitLab作为存储服务器

    小毛_nico: 同样的问题,现在解决了吗

  • Docker搭建流程图绘制工具draw.io和GitLab,并配置GitLab作为存储服务器

    非尔山尔: The authorization server does not support this response type.保存到gitlab的时候,存在这个问题:授权服务器不支持此响应类型。

  • Docker搭建流程图绘制工具draw.io和GitLab,并配置GitLab作为存储服务器

    非尔山尔: 请问,你这边也在搞么?有遇到过The authorization server does not support this response type.这个问题么?

大家在看

  • ShowDoc item_id 未授权SQL注入漏洞复现 3
  • B3 Contractor俱乐部:张家港市车友生活新篇章 43
  • 汽车电子专栏目录一览 1104
  • 如何从浅入深理解transformer? 1610
  • 立创天空星STMF4学习笔记,中断EXTI

最新文章

  • filebeat+logstash收集错误日志发送邮件提醒
  • java使用zxing生成二维码,可带logo和底部文字
  • Docker搭建流程图绘制工具draw.io和GitLab,并配置GitLab作为存储服务器
2022年2篇
2021年4篇
2020年2篇
2019年6篇
2016年1篇
2015年1篇
2014年11篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司亳州品牌网站设计报价毕节网站seo优化多少钱大庆企业网站改版价格长葛网站优化排名公司普洱网站排名优化报价飞来峡网站改版多少钱济源网站设计公司潜江模板推广推荐遂宁推广网站连云港网站设计报价鞍山企业网站建设报价优秀网站设计推荐南京SEO按天收费公司平凉建设网站泰州百度网站优化多少钱衡阳seo优化拉萨网站优化按天计费湖州品牌网站设计报价温州百度seo推荐上饶企业网站设计价格来宾营销型网站建设多少钱迪庆网站设计模板哪家好沈阳百度关键词包年推广报价广州关键词按天计费哪家好忻州企业网站建设哪家好鹤壁网站定制推荐枣庄建网站多少钱邵阳网页制作哪家好开封网站优化推广价格常州模板网站建设价格歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化