当前位置: 首页 > 知识库问答 >
问题:

如何提高由不可滚动网格视图组成的可滚动列表视图的性能?

孙志
2023-03-14

我有一个列表视图,其中每个项目都显示一个月历。在每个项目中,我都有一个网格视图来显示日期。因此,通过滚动列表项,我可以看到日历月正在发生变化。但是列表视图的滚动并不流畅。通过搜索到目前为止我得到的解决方案,网格视图渲染中有5*7=35个项目,这使得滚动变慢。所以,我通过只返回文本视图而不是我的布局来更改网格适配器的getItem()。

我还使用AsyncTask加载数据,然后将数据馈送到网格适配器。但滚动仍然很慢。如果有任何替代方案,而不是使用循环创建35个视图(每个视图对应一个日期),请告诉我。

这是理解问题的图像。我们可以在两边滚动:

这方面有很多代码。

共有1个答案

常雅珺
2023-03-14

在yout适配器中使用viewTypes(覆盖getItemViewType(int pos)和getViewTypeCount())。一种视图类型是标题(e.q.textView 2016年11月),第二种视图类型是标题(可能是带有文本视图的线性布局-星期一星期二星期三星期五星期六),第三种视图类型是带有包含天的文本视图的线性布局。

另一种方法是在日历中循环使用视图(GridView会保持视图处于默认状态,而您只会更改其可见性和文本)

 类似资料:
  • 我正在设计一个具有滚动视图的页面,其上方是表格视图(禁用滚动)。为此,我在这个问题中提到了答案 - 使UITableView不可滚动并调整高度以容纳所有单元格,但没有成功。 视图层次结构以及提供的约束- -主视图 -滚动视图< br >固定在主视图的所有边上(0,0,0,0),限制边距 -内容视图 固定到滚动视图(0,0,0,0),与主视图宽度相等,与主视图高度相等(优先级-250) -内容视图中

  • 我有一个android布局,它有一个,里面有很多元素。在的底部有一个,然后由适配器填充。 我遇到的问题是,android将从中排除,因为已经具有可滚动的功能。我希望与内容一样长,并且主滚动视图是可滚动的。 我怎样才能达到这种行为呢? 下面是我的主要布局: 然后以编程方式将组件添加到具有ID:的linearlayour中。下面是加载到LinearLayout中的一个视图。就是这个给我卷轴带来麻烦的。

  • 我的TableView包含一些数字数据。当我说按按钮编辑值时,它会将单元格的背景更改为绿色。当没有足够的行使表格可滚动时,这种方法很有效。一旦表格变成(或从一开始就是)可滚动的,它就会开始表现出怪异的行为。它会更改已编辑项目的背景,但也会更改在向下滚动之前不可见的项目的背景。然而,当我调试时,更改背景的代码只被调用一次。我认为它与tableview有关,当is scrollable破坏并重新创建单

  • 如何获取用户在滚动视图中滚动的像素量。我有一个包含大量文本的滚动视图。我在屏幕底部还有一个按钮。我想要的是将按钮上的文本更改为滚动视图中的滚动量。 这是我的滚动视图: 我的按钮是 我听说这可以通过使用< code>getScrollY()方法来实现。但不知道如何编程使用它。

  • 问题内容: 在此之前,我的滚动视图下面几乎有一个值得滚动的页面,下面有一个列表视图,但是一旦填充了列表视图,滚动视图就会移到列表视图的顶部。我该如何解决/防止这种情况发生? 滚动查看XML: 我试着做sv.fullScroll(ScrollView.FOCUS_UP); 和所有这些东西到我的scrollview,但它不起作用 问题答案: 首先,您可能已经听说过它,但以防万一: 切勿在内部放一个,因

  • 利用UIScrollView实现视差滚动效果。在demo中,滑动ScrollView,背景图和文字的滚动速度不一样。直接用ScrollView 的协议,对其子视图的坐标进行随机系数比例的位置移动修正,从而实现视差滚动效果。没有用其他的框架,代码简单。 作者说:原创Demo 转载请注明出处。 [Code4App.com]