Android实现双击TitleBar回顶部的功能示例代码

发布时间 - 2026-01-11 03:29:45    点击率:

前言

本文介绍的内容是偶然发现的这个功能,就给移过来了,整理了一下,也是一个类就实现的,使用很方便

特别感谢@TakWolf大大的开源项目,学了好多Android方面的东西

双击返回顶部代码

public class DoubleClickBackToContentTopListener implements View.OnClickListener {

 private final long delayTime = 300;
 private long lastClickTime = 0;
 private final IBackToContentTopView backToContentTopView;

 public interface IBackToContentTopView {
 void backToContentTop();
 }

 @Override
 public final void onClick(View v) {
 long nowClickTime = System.currentTimeMillis();
 if (nowClickTime - lastClickTime > delayTime) {
  lastClickTime = nowClickTime;
 } else {
  onDoubleClick(v);
 }
 }

 public DoubleClickBackToContentTopListener(@NonNull IBackToContentTopView backToContentTopView) {
 this.backToContentTopView = backToContentTopView;
 }

 public void onDoubleClick(View v) {
 backToContentTopView.backToContentTop();
 }

}

使用方法

public class CNodeActivity extends Activity implements 
 DoubleClickBackToContentTopListener.IBackToContentTopView {

 private Toolbar toolbar;
 private ListView listView;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_cnode);

 toolbar = (Toolbar) findViewById(R.id.toolbar);
 toolbar.setTitle(R.string.cnode);
 toolbar.setNavigationOnClickListener(v -> this.finish());
 toolbar.setOnClickListener(new DoubleClickBackToContentTopListener(this));

 listView = (ListView) findViewById(R.id.list_view);
 
 listView.setAdapter(//TODO);

 initData();

 }

 private void initData() {
 //TODO
 }

 @Override
 public void backToContentTop() {
 listView.setSelection(0);
 }

}

说明一下,DoubleClickBackToContentTopListener类里的delayTime属性是双击之间的时间差,这里默认设置的是300毫秒

就是这么简单,一个好的封装,可以省多少事呀!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。

参考

https://github.com/TakWolf/CNode-Material-Design


# android  # 双击回到顶部  # 双击返回  # titlebar使用  # Android 单双击实现的方法步骤  # Android实现双击返回键退出应用实现方法详解  # Android双击事件拦截方法  # Android使用PhotoView实现图片双击放大单击退出效果  # Android 双击Back键退出应用的实现方法  # Android 双击返回键退出程序的方法总结  # Android 在viewPager中双指缩放图片双击缩放图片单指拖拽图片的实现思路  # Android中双击返回键退出应用实例代码  # Android 高仿微信朋友圈动态支持双击手势放大并滑动查看图片效果  # Android 自定义View实现单击和双击事件的方法  # Android 屏幕双击事件的捕获简单示例  # Android 实现双击退出的功能  # Android App中实现可以双击放大和缩小图片功能的实例  # Android实现ImageView图片双击放大及缩小  # Android双击退出的实现方法  # Android双击返回键退出程序的实现方法  # 使用python编写android截屏脚本双击运行即可  # Android开发实现控件双击事件的监听接口封装类  # 双击  # 的是  # 有一定  # 大大的  # 这篇文章  # 谢谢大家  # 就给  # 这么简单  # 学了  # 很方便  # 开源  # 默认设置  # 过来了  # 有疑问  # final  # lastClickTime  # private  # long  # delayTime  # OnClickListener 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251811 】 【 AI营销90571


相关推荐: html如何与html链接_实现多个HTML页面互相链接【互相】  如何在阿里云部署织梦网站?  百度浏览器网页无法复制文字怎么办 百度浏览器复制修复  Android利用动画实现背景逐渐变暗  详解Android——蓝牙技术 带你实现终端间数据传输  Laravel定时任务怎么设置_Laravel Crontab调度器配置  zabbix利用python脚本发送报警邮件的方法  零基础网站服务器架设实战:轻量应用与域名解析配置指南  再谈Python中的字符串与字符编码(推荐)  如何快速生成高效建站系统源代码?  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】  中山网站推广排名,中山信息港登录入口?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  详解Huffman编码算法之Java实现  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  深入理解Android中的xmlns:tools属性  BootStrap整体框架之基础布局组件  如何打造高效商业网站?建站目的决定转化率  魔方云NAT建站如何实现端口转发?  如何用y主机助手快速搭建网站?  Laravel如何处理CORS跨域请求?(配置示例)  如何为不同团队 ID 动态生成多个非值班状态按钮  如何制作一个表白网站视频,关于勇敢表白的小标题?  JavaScript如何实现类型判断_typeof和instanceof有什么区别  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  java ZXing生成二维码及条码实例分享  Laravel如何自定义错误页面(404, 500)?(代码示例)  如何为不同团队 ID 动态生成多个独立按钮  如何快速搭建虚拟主机网站?新手必看指南  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  Laravel如何生成URL和重定向?(路由助手函数)  如何用5美元大硬盘VPS安全高效搭建个人网站?  Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  如何在IIS中新建站点并配置端口与物理路径?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  WordPress 子目录安装中正确处理脚本路径的完整指南  PythonWeb开发入门教程_Flask快速构建Web应用  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  Android Socket接口实现即时通讯实例代码  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  nginx修改上传文件大小限制的方法  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  网站制作企业,网站的banner和导航栏是指什么?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  如何用美橙互联一键搭建多站合一网站?