【问题标题】:How I can make a scroll programmatically identically like the touch scroll on Android?我如何以编程方式制作与 Android 上的触摸滚动相同的滚动?
【发布时间】:2023-02-10 00:06:34
【问题描述】:

我正在使用 AndroidPdfViewer 库为玻璃设备开发一个 PDF 查看器应用程序。目前,我无法执行触摸滚动它必须以编程方式完成。

滚动功能有效但只在一页上跳到其他页面非常难看,但它不像我在模拟器上运行应用程序时那样流畅(所有页面都像一页而不是丑陋的跳转)。

我想模拟一个以编程方式触摸滚动实现与在手机上相同的行为。

这项工作,但只滚动到第一页

 binding.pdfView.post {  binding.pdfView.scrollY += View.FOCUS_DOWN}

然后这允许我在所有页面之间跳转的文档中执行此操作,这在任何设备上看起来都不像触摸滚动。

        val pdfView: PDFView = binding.pdfView
        if (pdfView.scrollY < pdfView.bottom) {
            pdfView.post { pdfView.scrollTo(0, pdfView.scrollY + View.FOCUS_DOWN) }
        } else if (pdfView.currentPage < pdfView.pageCount - 1) {
            binding.pdfView.jumpTo(pdfView.currentPage.plus(1))
            pdfView.scrollY = 0
        }

【问题讨论】:

    标签: android view android-relativelayout


    【解决方案1】:

    认为你做的一切都很棒只是你可以改变

    pdfView.post { pdfView.scrollTo(0, pdfView.scrollY + View.FOCUS_DOWN) 
    

    对此

    pdfView.post {  binding.pdfView.scrollY += View.FOCUS_DOWN}
    

    让我知道它是否有效

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-15
      • 2015-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多