首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

教你简单实现RecyclerView自动滚动

RecyclerView内容过多,超出屏幕的时候,需要让它自己滚动展示数据,尤其是某些Android设备处于高处,或是不可被触摸点击的,这样的情况下,让其自己滚动展示数据尤为重要了 自动滚动的方案有很多种...class AutoPollRecyclerView : RecyclerView { var autoPollTask //滚动线程 : AutoPollTask?...= null private var running //是否正在滚动 = false private var canRun //是否可以自动滚动,根据数据是否超出屏幕来决定...} } 上面代码实现了最基本的滚动功能,但有时候Adnroid设备可以触摸的话,而当前recyclerview正在滚动,又去滑动它,那就会造成界面错乱,数据错乱了,所以还需要重写拦截onTouchEvent...方法,当触摸到recyclerview的时候,即在ACTION_DOWN的时,停止滚动线程,在ACTION_UP、ACTION_CANCEL时再开启线程。

61140

Android使用HorizontalScrollView实现水平滚动

它们不同的是 HorizontalScrollView 用于添加水平滚动,而 ScrollView 用于添加垂直滚动。 突然间想到 做一个屏幕下方水平滑动,屏幕上方并作出相应的反应的效果。...只是这个效果还有所缺陷,加载了 13 张图片,在屏幕下方水平滚动到最后一页时,第 9 张的图片并没有在上面的显示出来(原作者的也有这个问题);如果图片的数量小于或者等于 4 张时则不能运行。...loadNextImage() { // 数组边界值计算 if (mCurrentIndex == mAdapter.getCount() - 1) { return; } //移除第一张图片,且将水平滚动位置置...那就不用水平滚动了,那样就感觉使用 HorizontalScrollView 失去了意义。 所用到的布局文件: content_main.xml : <?...</RelativeLayout image_item_layout.xml (主要用于提供水平滚动的图片(屏幕底部)): <?

3.1K20

浅谈Android RecyclerView UI的滚动控件示例

还有就是只能够纵向滚动,如果要想实现横向移动,用 ListView 是做不到的。 RecyclerView 可以说是一个增强版的 ListView 。...recyclerView 示例 我们使用了 recyclerView 创建出了 ListView 的效果,而且代码逻辑更清晰咯。 2 横向滚动 现在让我们把这些猫变为 “横向滚动” 吧。...我们把 ImageView 与 TextView 都设置为水平居中,而且用 android:layout_marginTop,让文字与图片保持了一段距离,这样更美观。...横向排列 我们可以在水平方向上滑动来查看屏幕外的 “猫” 啦。..." android:layout_marginTop="10dp" / </LinearLayout 这里把 LinearLayout 的宽度改为 wrap_content,这样宽度会根据实际的布局列数自动适配

81610

Android Recyclerview实现水平分页GridView效果示例

昨天UI妹子给了给需求,展示水平分页效果,而且第二页要默认显示一部分,提示用户水平可以滑动,先上效果图: ?...,肯定尽量使用Recyclerview去复用View,而且ViewPager并不能复用,所以考虑之后,还是要用Recyclerview去实现。...解决思路 既然打算用Recyclerview实现,很明显这就可以用GridLayoutManager处理横向滑动的列表,初步实现横向列表的效果,列数为4的横向分页效果 ?...横向列表效果是实现了,但是并没有达到设计稿的要求,第二页要默认显示一部分,那么就要从水平方向上去思考解决问题,既然第二页要显示一部分,假如显示16dp,那么将第一页列表宽度减少右边距16dp,第二页就可以在第一页显示了...在Recyclerview的Adapter中,先上布局: <?xml version="1.0" encoding="utf-8"?

1.6K10

恢复 RecyclerView滚动位置

您可能在开发过程中遇到过这种情况,在 Activity/Fragment 被重新创建后,RecyclerView 丢失了它之前保有的滚动位置信息。...通常这种情况发生的原因是由于异步加载 Adapter 数据,且数据在 RecyclerView 需要进行布局的时候尚未加载完成,导致 RecyclerView 无法恢复到之前的滚动位置。...从  1.2.0-alpha02 版本开始,Jetpack RecyclerView 提供了一个新的 API,可以让 Adapter  在数据加载完成之前阻塞布局行为 ,从而避免丢失滚动位置信息。...恢复至原有滚动位置 有好几种方法可以用来恢复 RecyclerView 至正确的滚动位置,您可能已经在实际项目中用到了这些方法。...() > 0) 的时候,才恢复 RecyclerView 的状态。

1.4K10

Android 基于RecyclerView实现的歌词滚动自定义控件

本文介绍了Android 基于RecyclerView实现的歌词滚动自定义控件,分享给大家,具体如下: 先来几张效果图: ? ?...((;′⌒`)) 接下来说一下实现原理: 该控件分为以下几个部分: 歌词自动滚动 歌词颜色字体变化 触碰屏幕歌词不滚动,高亮显示,离开时自动移动到当前歌词位置 触碰屏幕中间线条出现以及显示该歌词的时间...1.对于滚动,我们可以调用 RecyclerView.smoothScrollBy() 方法, 相对于 ScrollBy() 方法,该方法能够实现平滑滑动。 我设置了总共显示九句歌词。...mWordList); wordList.add(""); wordList.add(""); wordList.add(""); wordList.add(""); 由于歌词的滚自动滚动是根据歌词时间来进行移动的...然后调用自动移动滚动方法和高亮方法。

1.5K10

android实现歌词自动滚动效果

最近在做Android 的MP3播放的项目,要实现歌词的自动滚动,以及同步显示。 lyric的歌词解析主要用yoyoplayer里面的,显示部分参考了这里 ,这里只是模拟MP3歌词的滚动。...滚动实现的代码其实也简单。显示画出当前时间点的歌词,然后再分别画出改歌词后面和前面的歌词,前面的部分往上推移,后面的部分往下推移,这样就保持了当前时间歌词在中间。...; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import...android.graphics.Path; import android.graphics.Typeface; import android.util.AttributeSet; import...; import android.media.MediaPlayer; import android.os.Bundle; import android.os.Handler; public class

2.6K10
领券