码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Android解决Toast的重复点击问题也可以叫消息队列


    1. public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
    2. //绑定缓存行
    3. Fruit f = fruitList.get(position);
    4. holder.img.setImageResource(f.getId());
    5. holder.tv.setText(f.getName());
    6. //console
    7. holder.img.setOnClickListener(new View.OnClickListener() {
    8. @Override
    9. public void onClick(View view) {
    10. String str = "您点击了" + holder.tv.getText() + "的图片";
    11. //判断是否未第一次点击,如果是就创建消息对象
    12. if (to == null) {
    13. to = Toast.makeText(text2.this, str, Toast.LENGTH_SHORT);
    14. } else {
    15. //不是就清除上一次未执行完的消息,直接执行本次消息
    16. to.cancel();
    17. to = Toast.makeText(text2.this, str, Toast.LENGTH_SHORT);
    18. }
    19. to.show();
    20. }
    21. });
    22. // holder.rowView.setOnClickListener(new View.OnClickListener() {
    23. // @Override
    24. // public void onClick(View view) {
    25. // Toast.makeText(text2.this,"您点击了"+holder.tv.getText(),Toast.LENGTH_LONG).show();
    26. // }
    27. // });
    28. }

    为了避免多次点击,造成事件队列堆积,用户体验极差!!!

     所以呢,我们就创建一个全局变量:

    private Toast to;

    第二次点击的时候,直接把上一次的消息弹框清除掉,执行新的消息弹框~

    这里为什么不取消if呢,因为第一次为null,会空指针异常。

  • 相关阅读:
    Vue工程化
    【数字图像处理】图像的几何变换
    ACL2021论文笔记(3篇)
    【RocketMQ】如何快速检查RocketMQ集群延迟情况
    Spring和Spring Boot之间的区别(小结)
    音频处理基础的一些笔记碎片
    蚂蚁面试官:Zookeeper 的选举流程是怎样的?我当场懵逼了
    ceph(分布式存储)
    算法通关村第十关-白银挑战数组最大K数
    【定制项目】【M15 消防安全宣传】【横屏版】主要模块:视频 + 音频 + 图标 + 问答游戏
  • 原文地址:https://blog.csdn.net/qx020814/article/details/126942588
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号