我正在使用VerticalGridFragment填充我的单个内容列表。我正在使用ArrayObjectAdapter作为适配器。我注意到的是最后一行数据排列不正确。例如:
1)请参阅上面的图片附件。
2)如果我的列表由5列组成,并且我在最后一行只显示4个内容,则leanback将在第2,第3,第4和第5个插槽中显示内容,第一个插槽将为空。
3)在其他情况下,最后5个内容显示在1,2,3,4个插槽中,而不是填充第5个插槽中的最后一个内容,最后一个内容放在的中心(第3个插槽)完成新行。
最后一行有更多不一致的数据绑定。
有没有人注意到leanback库中的这种行为?或任何解决方案来解决这个问题?
以下是我的代码摘录:
private volatile ArrayObjectAdapter listAdapter;
private void setupUX() {
setSearchAffordanceColor(getResources().getColor(R.color.search_bg_color));
VerticalGridPresenter verticalGridPresenter = new VerticalGridPresenter();
verticalGridPresenter.setNumberOfColumns(NUM_COL);
setGridPresenter(verticalGridPresenter);
CardView cardView = new CardView();
queriesFired = new HashMap<>();
dataHandler = new Handler(getActivity().getMainLooper());
listAdapter = new ArrayObjectAdapter(cardView);
setAdapter(listAdapter);
new Handler().postDelayed(() -> startEntranceTransition(), 500);
}
private void populateData() {
....
listAdapter.add(uiContent);
....
}
答案 0 :(得分:0)
发现问题 - 我正在为用于填充列表的图像卡设置setMaxLines(2)(以便我可以在两行中显示电影标题)。这似乎弄乱了verticalGridFragment的布局。
答案 1 :(得分:0)
发生这种问题。如果您在kitkat设备上进行测试。测试棉花糖或以上设备。这个问题不会发生。