问题描述
我正在尝试开发与汽车 https://developer.android.com/training/cars 兼容的应用。我分叉了官方 GitHub 示例并成功运行了应用程序 https://github.com/android/car-samples/blob/main/car_app_library/showcase/src/main/java/androidx/car/app/samples/showcase/templates/ListTemplateDemoScreen.java。 但问题是 ListItemTemplate 中可以显示 6 个项目而没有任何问题,但我需要显示 15 个以上的项目。因此,如果我添加超过 6 行,则会出现异常。
我试过了:
ItemList.Builder listBuilder = ItemList.builder();
listBuilder.addItem(
Row.builder()
.setonClickListener(ParkedOnlyOnClickListener.create(() -> onClick("Parked action")))
.setTitle("Parked Only Title")
.addText("More Parked only text.")
.build());
for (int i = 2; i <= 15; ++i) { //if items < 6 then it works fine
final String onClickText = "Clicked row: " + i;
listBuilder.addItem(
Row.builder()
.setonClickListener(() -> onClick(onClickText))
.setTitle("Title " + i)
.addText("First line of text")
.addText("Second line of text")
.build());
}
异常 - 引起:java.lang.IllegalArgumentException:数字 添加的行数超过了支持的最大值 6
我正在使用 'com.google.android.libraries.car:car-app:1.0.0-beta.1'
库进行开发。
解决方法
ListTemplate :表示项目列表的模板。
此模板允许在 ItemList(s) 中总共最多 6 行。主机将忽略超过该限制的任何项目。每个 Rows 最多可以通过 Row.Builder.addText(CharSequence) 添加 2 行文本。
因此,您无法执行此操作。