【问题标题】:Update layouts while scroll the nested scrollview滚动嵌套滚动视图时更新布局
【发布时间】:2021-06-02 17:11:16
【问题描述】:

我有嵌套的 scrollview 有 100 个布局。所有布局最初都是空的。当用户滚动并停止滚动时,我将向服务器发送请求并更新布局。我在同时做这两个方面都面临问题。当请求发送到服务器并接收响应时,我正在使用以下代码更新布局:

((Activity) ctContext)
    .runOnUiThread(new Runnable() {
                       public void run() {
                           reDesignLayout(layoutID);
                       }
                   });

但问题是我无法在更新时滚动scrollview。我尝试使用 Handler 和 runOnUiThread。但两者都无法滚动。请帮我解决这个问题。

【问题讨论】:

    标签: android android-scrollview


    【解决方案1】:

    我认为使用 Scrollview 不适合您的情况。 尝试使用适配器切换到 RecyclerView。 好处:

    • 内存使用率低
    • 处理每个项目的出现/消失状态(您的术语中的布局),您可以启动/停止/恢复网络调用以减少服务器上的工作负载等。
    • 调整每个项目的布局设置。

    【讨论】:

      【解决方案2】:

      如果您想在该过程中更新数据,则需要创建一个 id,找到视图并每次都分配它们。这意味着您需要编写代码来将 100 个不同的 id 分配给包含您的视图的 100 个不同的容器。 如果不是不真实的话,为它们所有人分配价值将是一种真正的痛苦。对于这种情况,根本不建议这样做。

      相反,我建议使用回收站视图。哪个是最好的。它基于重用的概念,减少了您编写的代码量和所需的内存空间,并有助于有效地填充数据。

      您可以访问下面的链接,了解有关回收站视图的更多信息。希望对您有所帮助。祝您编码愉快!

      https://guides.codepath.com/android/using-the-recyclerview

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-27
        • 2021-03-09
        • 1970-01-01
        相关资源
        最近更新 更多