抱歉,如果我在这里没有提供足够的信息,我是 android/java 的新手,并且正在通过结合各种示例项目的元素来学习。
我有一个VerticalGridFragment
Android TV 项目(使用leanback)的工作页面,它在列和行中加载专辑封面和详细信息。它大量借鉴了github 上的 googlesamples 示例。
使用music_database_proto.json
以下格式的测试文件:
{
"cards": [
{
"type": "GRID_SQUARE",
"title": "Around the World in a Day",
"artist": "Prince and the Revolution",
"description": "Prince and the Revolution",
"groupType": 0,
"tagID": 0,
"localImageResource": "food_01"
}
}
然后我可以使用一个createRows()
函数(来自同一个示例项目)加载它:
PresenterSelector cardPresenterSelector = new CardPresenterSelector(getActivity());
mAdapter = new ArrayObjectAdapter(cardPresenterSelector);
String json = Utils.inputStreamToString(getResources().
openRawResource(R.raw.music_database_proto));
CardRow row = new Gson().fromJson(json, CardRow.class);
mAdapter.addAll(0, row.getCards());
在示例中使用了CardRow.class、Card.class的示例项目类及其各种支持类。
我已经实现了一个SQLite
成功启动的数据库,我可以在 Android Studio 的 Logs 中调用各种结果。我不知道从哪里开始插入数据库中的结果,因为Cards
我可以加载到VerticalGridFragment
,替换json
文件的功能?
我认为这就像List<Card>
从数据库结果创建一个并将其添加到mAdapter
using中一样简单mAdapter.addAll
。但是,我在使用迭代代码实现对象List
时运气不佳。Card
绝望地,我想我应该把数据库结果变成一个json
字符串,并将它们输入到我上面显示的现有代码中?
任何帮助表示赞赏。该数据库与 json 变量的重新创建一样基本,可以进行调整以适应。