如何制作Android TV browseFragment界面,只有一行可以像YouTube应用一样显示?
这是我的代码的基本结构:
browseFragment browseFragment = browseFragment.getInstance();
browseFragment.setHeadeRSState(browseFragment.HEADERS_ENABLED);
browseFragment.setTitle(getString(R.string.AplicationName));
browseFragment.setBadgeDrawable(ContextCompat.getDrawable(this, R.drawable.badge));
ArrayObjectAdapter rowsAdapter = new ArrayObjectAdapter(new ListRowPresenter());
for ( int i = 0; i < itemsCount; ++i ) {
HeaderItem header = new HeaderItem(i, "Header" + items[i].title);
ArrayObjectAdapter rowAdapter = new ArrayObjectAdapter(new CardPresenter());
for ( int i = 0; i < subitemsCount; ++i ) {
rowAdapter.add(subitems[i]);
}
rowsAdapter.add(new ListRow(header, rowAdapter));
}
browseFragment.setAdapter(rowsAdapter);
这将生成左侧的所有标题,但不是一个可见的项目行,而是获得一个包含所有行的网格,如示例应用程序:
解决方法:
您可以使用此处提供的自定义browseFragment组件:https://github.com/dextorer/BuildingForAndroidTV
您将能够复制YouTube电视应用提供的相同UI结构.
UPDATE
我写了一个简单的库,扩展了Leanback并提供了更简化(和可靠)的自定义.这里是:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。