首页 > 其他分享 >利用ScrollView实现布局自动滚动

利用ScrollView实现布局自动滚动

时间:2023-05-01 14:00:59浏览次数:30  
标签:滚动 ScrollRunnable Handler ScrollView mHandler 自动 sc off


首先1,获得ScrollView sc = (ScrollView) findViewById(R.id.scroll);//scroll对象
     LinearLayout mlayout = (LinearLayout) findViewById(R.id.mlayout);//scrollView中包含的布局对象
2,定义一个Handler
private final Handler mHandler = new Handler();
3,实现一个线程

private Runnable ScrollRunnable= new Runnable() {
                @Override
                public void run() {
                         int off = mlayout.getMeasuredHeight() - sc.getHeight();//判断高度      
 if (off > 0) {
                                sc.scrollBy(0, 30);
                                if (sc.getScrollY() == off) {
                                        Thread.currentThread().interrupt();
                                } else {
                                        mHandler.postDelayed(this, 1000);
                                }
                        }
                }
        };



4,开始滚动


mHandler.post(ScrollRunnable);



5,暂停滚动


mHandler.removeCallbacks(ScrollRunnable);



ScrollView强制滑到底部

scroll.fullScroll(View.FOCUS_DOWN)


标签:滚动,ScrollRunnable,Handler,ScrollView,mHandler,自动,sc,off
From: https://blog.51cto.com/u_5454003/6238878

相关文章

  • mooc自动评
    非常不喜欢互评这个东西,感觉在重复无意义的动作,当然如果认真看我没话说由于js无法找到提交那个元素(虽然明明就在那,所以可能是被隐藏了点击之类的每个页面的脚本是这样的//找到所有class="s"的父容器元素并点击最后一个class="d"的labelletparents=document.getEl......
  • CSS3_图片连续无缝滚动
    效果图:传不上来。。。 在线预览地址:地址代码<!doctypehtml><html><head> <metacharset="utf-8"> <title>图片滚动</title> <metaname="keywords"content=""> <metaname="description"content=&qu......
  • Angular4_支持多选,分组,自动完成,带图标,清理输入框可配置的select
    Angular4_支持多选,分组,自动完成,过滤,带图标,清理输入框可配置的select效果图DocumentationUsageInstall ngx-select-ex through npm packagemanagerusingthefollowingcommand:npmingx-select-ex--saveForusagewithAngular4installusingthefollowingcomman......
  • springboot 自动装配的原理
     自动装配原理问题就是为什么我们直接导入依赖就可以使用了,甚至不用配置web.xml,tomcat等,springboot内部是如何实现的?主启动类上的注解@SpringBootApplication里有三个重要注解:@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan1.@SpringBootConfiguration......
  • 【机械仿真】基于matlab模拟自动摆钟
    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......
  • 如何彻底关闭 Windows 10 自动更新
    彻底关闭Windows10自动更新,分为三步,具体如下:1.组策略禁用Windows更新Win键+R,输入gpedit.msc,启动组策略编辑器。左侧选择[本地计算机配置]->[管理模板]->[Windows组件]->[Windows更新],禁用右侧的[配置自动更新]和[启用通过自动更新建议的更新]选项。2.停......
  • Linux用ntpdate自动同步时间后使用crontab定时任务更新
     两种同步linux系统的时间方法:(1)开启ntpd服务,即配置ntp服务器实现时间同步。(2)利用ntp客户端程序,即ntpdate同步时间。注意:因为ntp服务器本来就会与上层时间服务器进行同步,所以在默认的情况下,ntp服务器不可以使用ntpdate,也就是说ntpdate和ntpd不能同时启用。上一篇已经介绍......
  • 使用Dino+SAM+Stable diffusion 自动进行图片的修改
    SAM是Mata发布的“SegmentAnythingModel”可以准确识别和提取图像中的对象。它可以分割任何的图片,但是如果需要分割特定的物体,则需要需要点、框的特定提示才能准确分割图像。所以本文将介绍一种称为GroundingDino的技术来自动生成SAM进行分割所需的框。除了分割以外,我......
  • 注册表解决Office自动升级问题
    Office自动升级问题问题:当我早上准备打开PPT准备毕业论文中期答辩时,意外发现Office应用打不开反而跳转到MicrosoftOffice365的升级页面(该升级页面最终会显示错误代码),无法通过office内部应用来关闭自动升级。解决:1.Win+R键输入regedit回车打开注册表2.在文件下方......
  • python+playwright 学习-58 Jenkins上使用 Pipeline 运行 playwright 自动化脚本
    前言Dockerfile.focal可用于在Docker环境中运行Playwright脚本。这些镜像包括在Docker容器中运行浏览器所需的所有依赖项,还包括浏览器本身。playwright在linux系统上目前只支持Ubuntu系统的部分版本,centos和debian系统上是没法运行的。jenkins环境准备需安装2个跟docke......