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

 更新时间:2017年09月30日 10:51:34   作者:Tomoya  
一个简单易用的导航栏TitleBar,可以轻松实现IOS导航栏的各种效果,下面这篇文章主要给大家介绍了关于Android如何实现双击TitleBar回顶部功能的相关资料,文中给出了详细的示例代码,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

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

特别感谢@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如何集成极光短信验证

    Android如何集成极光短信验证

    这篇文章主要为大家详细介绍了Android如何集成极光短信验证,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 基于startActivityForResult方法处理两个Activity之间数据传递问题

    基于startActivityForResult方法处理两个Activity之间数据传递问题

    这篇文章主要介绍了基于startActivityForResult方法处理两个Activity之间数据传递问题的相关资料,需要的朋友可以参考下
    2015-11-11
  • Android自定义View实现简单水波纹效果

    Android自定义View实现简单水波纹效果

    这篇文章主要为大家详细介绍了Android自定义View实现简单水波纹效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • Android应用隐私合规检测实现方案详解

    Android应用隐私合规检测实现方案详解

    这篇文章主要介绍了Android应用隐私合规检测实现方案,我们需要做的就是提前检测好自己的应用是否存在隐私合规问题,及时整改过来,下面提供Xposed Hook思路去检测隐私合规问题,建议有Xposed基础的童鞋阅读,需要的朋友可以参考下
    2022-07-07
  • Android Intent与IntentFilter案例详解

    Android Intent与IntentFilter案例详解

    这篇文章主要介绍了Android Intent与IntentFilter案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • 利用Android实现比较炫酷的自定义View

    利用Android实现比较炫酷的自定义View

    自定义View、多线程、网络,被认为是Android开发者必须牢固掌握的最基础的三大基本功,这篇文章主要给大家介绍了关于如何利用Android实现比较炫酷的自定义View的相关资料,需要的朋友可以参考下
    2021-07-07
  • Android Jetpack结构运用Compose实现微博长按点赞彩虹效果

    Android Jetpack结构运用Compose实现微博长按点赞彩虹效果

    Compose在动画方面下足了功夫,提供了丰富的API。但也正由于API种类繁多,如果想一气儿学下来,最终可能会消化不良,导致似懂非懂。结合例子学习是一个不错的方法,本文就带大家边学边做,通过实现一个微博长按点赞的动画效果,学习了解Compose动画的常见思路和开发技巧
    2022-07-07
  • Android内存优化操作方法梳理总结

    Android内存优化操作方法梳理总结

    这篇文章主要介绍了Android 内存优化知识点梳理总结,Android 操作系统给每个进程都会分配指定额度的内存空间,App 使用内存来进行快速的文件访问交互,长时间如此便需要优化策略,文章分享优化知识点总结,需要的朋友可以参考一下
    2022-11-11
  • Android 后台运行白名单实现保活

    Android 后台运行白名单实现保活

    这篇文章主要介绍了Android 后台运行白名单实现保活,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Android下的POS打印机调用的简单实现

    Android下的POS打印机调用的简单实现

    本篇文章主要介绍了Android下的POS打印机调用的简单实现,非常具有实用价值,需要的朋友可以参考下
    2017-04-04

最新评论