在很多新闻类项目中,我们向下滑动列表查看新闻,一般都会实现下拉刷新,上拉加载更多的功能,有时我们滑到了很底部,这时需要刷新或上拉到顶部就很麻烦,所以需要一键置顶,很多项目中都有这种设计,那么该怎么实现呢?

下面提供一种实现思路,不是很麻烦,直接上代码:
public class GoTopScrollView extends ScrollView implements
View.OnClickListener { // 置顶按钮 private ImageView goTopBtn; public
GoTopScrollView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle); } public void setScrollListener(ImageView
goTopBtn) { this.goTopBtn = goTopBtn; this.goTopBtn.setOnClickListener(this); }
@Override protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt); // 滑动距离超过200px,出现向上按钮 if(t > 200) {
goTopBtn.setVisibility(View.VISIBLE); } else {
goTopBtn.setVisibility(View.GONE); } } @Override public void onClick(View v) {
if(v.getId() == R.id.imageView) { this.smoothScrollTo(0, 0); } } }

然后在将这个自定义的ScrollView嵌在ListView的外面,使用方法如下:在ScrollView中添加一个ImageView,ScrollView实质上是一个FrameLayout,setCrollListener(imageView)即可

技术
©2020 ioDraw All rights reserved
python简单小游戏代码-10分钟用Python编写一个贪吃蛇小游戏,简单Linux之父:C++语言很烂 不会改用其重写Linux内核webpack配置postcss-loader无效简单的学生成绩管理系统歌词格式转化,trc转lrcGO语言学习笔记【webpack】DLL plugin原理分析伪造ACK实现TCP数据注入调研组织结构图消息称华为招聘半导体设备人才 网友:光刻机是刚需