首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

教你简单实现RecyclerView自动滚动

当RecyclerView内容过多,超出屏幕的时候,需要让它自己滚动展示数据,尤其是某些Android设备处于高处,或是不可被触摸点击的,这样的情况下,让其自己滚动展示数据尤为重要了 自动滚动的方案有很多种...,目前比较常见又最简单的一种是:继承至RecyclerView,并实现runnable方法,每间隔10ms(delayTime)就去执行scrollby(x,y)方法,其中delayTime和x,y的值决定了滚动速度...= null private var running //是否正在滚动 = false private var canRun //是否可以自动滚动,根据数据是否超出屏幕来决定...} } 上面代码实现了最基本的滚动功能,但有时候Adnroid设备可以触摸的话,而当前recyclerview正在滚动,又去滑动它,那就会造成界面错乱,数据错乱了,所以还需要重写拦截onTouchEvent...方法,当触摸到recyclerview的时候,即在ACTION_DOWN的时,停止滚动线程,在ACTION_UP、ACTION_CANCEL时再开启线程。

1.1K40

Android笔记——ViewPager循环、自动滚动效果

ViewPager循环、自动滚动,这种效果很常见,一般app首页都会有焦点图、或者用户引导页面。第三方比较好用的我推荐阿里开源的UltraViewPager,毕竟大公司的,用着放心吧 ๑乛◡乛๑。...有2种方案实现循环滚动,一种是在PagerAdapter设置最大数量为int最大值,另一种就是本文实现的。前一种感觉有点奇怪,如果不带自动循环滚动的话还可以用,毕竟用户一般不会切换这么多次能看到头。...而对于循环滚动的话,需要本文的类似思路实现起来比较好一点吧,原理看上图即可。例子效果图在最后。...onPageScrollStateChanged状态改变的时候,即停止滑动的时候滑到指定位置,当手指拖动的时候需要停止自动播放; 小圆点指示器,是一个线性布局根据图片数量添加原点,原点背景为selector...; 在屏幕显示的时候设置自动播放,离开屏幕时候停止播放; 如果想显示3个page需要在viewpager父容器设置 android:clipChildren="false" android:layerType

2.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android实现类似中奖信息自动滚动效果

    最近需要实现抽奖功能,就需要把中奖的信息,以垂直循环滚动的形式向用户进行展示,这篇主要是使用RecyclerView实现垂直滚动效果,九宫格抽奖功能会在后期写,那现在就来看看实现的过程吧。...private boolean canRun;//标示是否可以自动轮询,可在不需要的是否置false public AutoPollRecyclerView(Context context...start(); break; } //return false,注释掉onTouchEvent()方法里面的stop和start方法,则列表自动滚动且不可触摸...类似中奖信息自动滚动效果到这里就实现了,实现过程还是相对比较简单的,重点在于自定义RecyclerView的实现处理。...需要Demo源码的童鞋可以在底部公众号回复:"自动滚动效果" 即可获取---- --- 小编整理了一份Android电子书籍,需要的童鞋关注公众号回复:"e_books" 即可获取哦!

    3.6K30

    Android微信之简单文本分享(ShareSDK-Android Studio)

    ShareSDK的官方关于Android Studio的整合写的比较乱,整合的时候遇到了一些坑,自己总结下。...3.手机安装微信客户端 补充:由于本Demo只是简单使用了文本分享API,如果你需要使用微信登录API,那么就需要进行开发者认证(具体认证流程请参考官网),非政府,事业单位,每年300,政府事业单位认证免费...,仅在人人网和QQ空间使用 oks.setTitleUrl("http://sharesdk.cn"); // text是分享文本,所有平台都需要这个字段 oks.setText("我是分享文本...oks.setComment("我是测试评论文本"); // site是分享此内容的网站名称,仅在QQ空间使用 oks.setSite(getString(R.string.app_name))...); } 至此,一个通过ShareSDK实现简单文本分享的Demo就完成了。

    67910

    简单实现Android APP自动更新

    一般的安卓app都有自动更新功能,实现app的更新,以让用户体验新版本的功能,这里也是项目中用到的,今天就来总结一下,代码应该有点多,还请耐心点哈。...安卓应用实现自动更新比较简单,这里跟大家介绍下: ?...一般的安卓app都有自动更新功能,实现app的更新,以让用户体验新版本的功能,这里也是项目中用到的,今天就来总结一下,代码应该有点多,还请耐心点哈。...安卓应用实现自动更新比较简单,这里跟大家介绍下: 第一步 服务器端: 服务端提供一个借口,或者网址,我这里就用的服务器是tomcat,这里提供一个网址如下://也就是一个json数据接口public static...当然了哈,这里我写的还是有点问题的,每次进入都会提示,如果有必要,也可以实现是否要自动更新,用服务,也就是点击是否自动更新,如果不是自动更新,就不会去触发服务端接口信息,如果是自动更新,就去触发,来获取最新的

    2.7K30

    学习滚动插件iScroll的简单使用

    iScroll介绍 iScroll是一个高性能,资源占用少,无依赖,跨平台的javascript上拉加载,下拉刷新的滚动插件,目前版本v5.2.0。...它不支持快速跳跃,滚动条,鼠标滚轮,快捷键绑定。但如果你所需要的是滚动(特别是在移动平台) iScroll 精简版 是又小又快的解决方案(这个能应付大多数场景)。...iscroll-probe.js,探查当前滚动位置是一个要求很高的任务,这就是为什么我决定建立一个专门的版本。如果你需要知道滚动位置在任何给定的时间,这是iScroll给你的。...iscroll-infinite.js,可以做无限缓存的滚动。处理很长的列表的元素为移动设备并非易事。 iScroll infinite版本使用缓存机制,允许你滚动一个潜在的无限数量的元素。...可以处理用户进行移动交互的元素:滚动,缩放,平移,无限滚动,视差滚动,旋转等功能。

    2.9K30

    羊皮书APP(Android版)开发系列(十五)Android 循环滚动,自动轮播广告展示

    目前市面上很多的app,在首页中都带有一个循环滚动,自动轮播的广告条,也就表明这个简单的控件是十分常用的,市面上有很多中实现方式,但基本上都是在自定义View中使用ViewPager来实现的,下面我们就来看下...,具体的实现,其实很简单哦,无非就是自定义一个View。...import java.util.ArrayList; import java.util.List; import cn.studyou.library.R; /** * 基本功能:广告滚动条,支持自动轮播...如MainActivity的布局文件activity_main.xml中添加如下代码: <cn.studyou.library.view.BannerLayout android:id=...,自动轮播的广告条就完成了,运行项目就可看到效果。

    1.3K50

    Android微信之简单文本分享(集成官方SDK-Android Studio)

    3.手机安装微信客户端 补充:由于本Demo只是简单使用了文本分享API,如果你需要使用微信登录API,那么就需要进行开发者认证(具体认证流程请参考官网),非政府,事业单位,每年300,政府事业单位认证免费...导入jar包.png 2.添加必要的权限 android:name="android.permission.INTERNET"/> android...="android.permission.WRITE_EXTERNAL_STORAGE"/> 3.向微信APP注册你的id 要使你的程序启动后微信终端能响应你的程序,必须在代码中向微信终端注册你的id...注册APP_ID 4.发起文本分享请求 // 文本分享 private void shareText() { // 初始化一个WXTextObject对象 WXTextObject...对象 WXMediaMessage msg = new WXMediaMessage(); msg.mediaObject = textObj; // 发送文本类型的消息时,title

    1.9K20

    Android微信之简单文本分享(ShareSDK-Eclipse)

    效果图.png 一.SDK导入 从官网下载到SDK文件,然后生成相应的文件,拷贝到项目中即可,非常的方便 ? SDK生成.png 生成的文件如下图: ?...-- 蓝牙分享所需的权限 --> android:name=*"android.permission.BLUETOOTH"* /> android...oks.setTitleUrl("http://sharesdk.cn"); // text是分享文本,所有平台都需要这个字段 oks.setText("我是分享文本"); // imagePath...("我是测试评论文本"); // site是分享此内容的网站名称,仅在QQ空间使用 oks.setSite(getString(R.string.app_name)); // siteUrl...:微信测试的时候,微信测试需要先签名打包出apk 注意:微信测试的时候,微信测试需要先签名打包出apk 注意:微信测试的时候,微信测试需要先签名打包出apk 微信分享不了原因汇总: 1、测试没有打包(用

    46210

    Android开发(3) 可滚动的录入表单演示

    那么我们就做个这样的的布局演示吧。 本文使用的控件有: RelativeLayout 相对布局 ScrollView 滚动视图 TableLayout 表格布局 ?...我们设定顶部控件的相对属性为:android:layout_alignParentTop="true",这个属性意思是对齐到父控件的顶部 然后设定底部控件的属性为:android:layout_alignParentBottom...="true",指定它对齐到父控件的底部 再指定中间的控件属性为: android:layout_below ="@id/toppanel" ,指示它位于某个控件下方。...名字是:toppanel 底部控件使用一个RelativeLayout 名字是:panelBottom 中间控件使用一个ScrollView,滚动视图控件。...该控件的好处是当它的子控件太长时,会自动出现滚动条。 下面我们为ScrollView下添加一个TableLayout,这个一个表格布局控件,使得布局非常整齐。

    1.2K00

    viewpager循环滚动和自动轮播的问题

    ViewPager是一个常用的android组件,不过通常我们使用ViewPager的时候不能实现左右无限循环滑动,在滑到边界的时候会看到一个不能翻页的动画,可能影响用户体验。...此外,某些区域性的ViewPager(例如展示广告或者公告之类的ViewPager),可能需要自动轮播的效果,即用户在不用滑动的情况下就能够看到其他页面的信息。...而内容的显示是由Adapter控制的,因此这里重点就是这个Adapter了。为简单起见,本例的每个View直接是一张图片。...当然,通常情况下设置为100倍实际内容个数也是可以的,之前看的某个实现就是这么干的。...但是,简单的求模会出现问题:考虑用户向左滑的情形,则position可能会出现负值。所以我们需要对负值再处理一次,使其落在正确的区间内。

    3.5K60

    页面回发后,让页面自动滚动到指定位置的一种简单的方法

    以前看过一篇文章介绍了一种方法,当时也没有理解,也没有记录下来,现在又遇到了这个问题,还是自己想一个简单点的方法吧。...博克园里的“最新评论”里的链接,点击后打开的页面会直接滚动到指定的评论而不是帖子一开始的位置。...标记”,然后单击这个连接的时候就会自动滚动到这里。...很简单,在页面加载完毕之后执行这个js语句就可以了 document.getElementById("a001").click(); 等等,并不是每一次看这个页面都要自动滚动者这个标签上呀,...等等好像还有一个问题,如果在同一个页面里,需要根据不同的情况,跳到不同的位置怎么办呀。这个也简单。

    3.2K70
    领券