【发布时间】:2015-10-30 09:57:28
【问题描述】:
在我的应用程序中,我使用的是 StaggeredGridView,它工作正常。但是,当我将它放在 scorllview 中并尝试滚动它时,不幸的是 StaggeredGridView 的高度与确切的网格视图不匹配。
为了控制滚动,我动态计算网格视图的高度并通过基于子项以编程方式将其设置为网格视图。我认为这将是问题..
这里的主要问题是项目高度与普通网格视图不同。
这是我的 setGridViewHeightBasedOnChildren 代码
public static void setListViewHeightBasedOnChildren(StaggeredGridView listView) {
SampleAdapter listAdapter = (SampleAdapter) listView.getAdapter();
if (listAdapter == null)
return;
int desiredWidth = MeasureSpec.makeMeasureSpec(listView.getWidth(), MeasureSpec.UNSPECIFIED);
int totalHeight = 0;
View view = null;
for (int i = 0; i < listAdapter.getCount(); i++) {
view = listAdapter.getView(i, view, listView);
if (i == 0)
view.setLayoutParams(new ViewGroup.LayoutParams(desiredWidth, LayoutParams.WRAP_CONTENT));
view.measure(desiredWidth, MeasureSpec.UNSPECIFIED);
totalHeight += view.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getHeight() * (listAdapter.getCount() - 1));
listView.setLayoutParams(params);
listView.requestLayout();
}
谁能帮我在滚动视图中放置一个 StaggeredGridView.. 在此先感谢
【问题讨论】:
-
你找到解决办法了吗?
-
@SagarZala 很遗憾没有。
标签: android gridview scrollview staggered-gridview