我想在浏览片段中重新加载一些行数据.
基本上我想重置适配器数据而不会在浏览片段中产生类似闪存的效果.知道如何做到这一点?
类似于列表视图中的notifyDataSetChanged().
感谢名单
我正在使用android TV应用程序,并且正在使用leanback库。
我想自定义应用程序布局“ BrowseFragment”。我想删除标题视图,仅显示卡列表“行”。
有可能做到这一点,或者有其他解决方案可以实现这一目标吗?
我在 Android TV 项目中面临子类化问题VerticalGridFragment:一切正常,但如果一行中的项目少于最大列数,则项目将从中心开始水平对齐。
奇怪的是,只有当元素总数小于最大列数时才会发生这种情况。例如,假设这个数字是 6,如果我有 1 个项目,它将被放置在该行的中心。相反,如果我有 14 个项目,则第三行的 2 个项目将从左侧开始放置。
有没有办法将一行中的项目与left或对齐start?难道我做错了什么?
我已经尝试过这种方式,但没有任何反应,项目从中心开始对齐。
<style name="AppTheme.Widget.Leanback.GridItems.VerticalGridView"
parent="Widget.Leanback.GridItems.VerticalGridView">
<item name="android:gravity">left|start</item>
</style>
Run Code Online (Sandbox Code Playgroud)
然后在我的主题中像这样设置它,该主题扩展自Theme.Leanback:
<item name="itemsVerticalGridStyle">@style/AppTheme.Widget.Leanback.GridItems.VerticalGridView</item>
Run Code Online (Sandbox Code Playgroud) 我需要禁用BrowseFragment中的标头,然后添加到ArrayObjectAdapter卡。当我做一个setHeadersState(HEADERS_DISABLED)应用程序时会崩溃。如果我setHeadersState(HEADERS_DISABLED)稍后运行方法,例如在onLoadFinished,应用程序不会崩溃,但标题栏立即可见然后隐藏,而不是每次在适配器中显示项目时。
MainFragment.class
\n\n public class MainFragment extends BrowseFragment implements LoaderManager.LoaderCallbacks<List<Module>> {\n private static final int MODULES_LOADER_ID = 100;\n private ArrayObjectAdapter mRowsAdapter;\n @Override\n public void onActivityCreated(Bundle savedInstanceState) {\n super.onActivityCreated(savedInstanceState);\n setupUIElements();\n setupRowAdapter();\n setupListeners();\n getLoaderManager().initLoader(MODULES_LOADER_ID, null, this);\n }\n private void setupUIElements() {\n setTitle(getActivity().getString(R.string.app_name));\n setBadgeDrawable(getResources().getDrawable(R.drawable.title, getActivity().getTheme()));\n setHeadersTransitionOnBackEnabled(false);\n setBrandColor(getActivity().getResources().getColor(R.color.fastlane_background));\n setHeadersState(HEADERS_DISABLED);\n }\n private void setupRowAdapter() {\n mRowsAdapter = new ArrayObjectAdapter(new ListRowPresenter());\n setAdapter(mRowsAdapter);\n }\n private void setupListeners() {\n setOnItemViewSelectedListener(new ItemViewSelectedListener());\n setOnItemViewClickedListener(new ItemViewClickedListener());\n }\n private void loadModules(List<Module> …Run Code Online (Sandbox Code Playgroud) I am using android leanback-assistant sample of google to enable google assistant support in my AndroidTV app. But in given code snippet the query() method of SearchContentProvider is not receiving the processed string what I get from uri.lastPathSegment(). e.g. if user says "play gravity movie", the content provider should receive only "gravity" as query but it receive complete string "play gravity movie". Is that an expected behaviour. What could be the solution if not?
class SearchContentProvider : ContentProvider() {
private …Run Code Online (Sandbox Code Playgroud) 我正在开发Android TV一个应用程序,我有一个recycler view. 如何将焦点集中在想要的位置上?(我已经尝试过scrollToPosition和smoothScroller,但它不起作用)。提前致谢!
有谁知道如何实现标题中的问题?目标是避免在单击标题后 Leanback 应用程序放大行项目时导致标题栏消失的动画。
BrowseSupportFragment的 setHeadersState 没有帮助。也许与在 OnHeaderClickedListener 期间劫持 startHeadersTransitionInternal 有关?如果是这样,知道如何正确实施它吗?
我正在开发一个使用 Leanback lib 的 Android TV 项目。
我想要实现的目标是使 VerticalGridView ( androidx.leanback.widget.VerticalGridView) 中内置的垂直滚动条可见。
<androidx.leanback.widget.VerticalGridView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/container_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:fadeScrollbars="false"
android:scrollbarThumbVertical="@color/color_green"
app:fastScrollVerticalThumbDrawable="@drawable/scrollbar_vertical_thumb"
android:scrollbarSize="5dp"
style="?attr/rowsVerticalGridStyle" />
Run Code Online (Sandbox Code Playgroud)
如图所示,我尝试设置滚动条大小、可绘制、缩略图样式以及所有其他可能的属性以使滚动条可见。
现在的悲剧是,当我调用verticalGridView.getVerticalScrollbarWidth();方法来检查宽度时,它返回了0。看来 Leanback lib 正在将 VerticalScrollbarWidth 设置为0我找不到的某个地方。
我还尝试查看其他 Leanback 应用程序,尽管视图是可滚动的,但没有应用程序显示滚动条拇指。
为什么??有什么方法可以向我的用户展示 Android TV 应用程序上的滚动条吗?
我是第一次使用 Android TV,并且正在学习使用 Leanback。
在我的电视应用程序中,我需要实现标题(导航抽屉),其中图标在折叠抽屉时应始终可见,类似于Voot Android TV 应用程序
当焦点移动到右侧时,标题完全折叠(包括标题和图标)。就我而言,我想将标题折叠到标题中,并且只需要在标题中显示图标。
下面我添加了 Voot 应用程序的屏幕截图,以便更好地理解我的要求
我想修改 Leanback 视频播放器 UI。我想改变两件事:
Seekbar我希望能够在其中放置广告的提示点标记。我尝试扩展该类androidx.leanback.widget.SeekBar并修改它并覆盖该lb_playback_transport_controls_row.xml文件,但该类已被标记为final. 我已经有了提示点位置,只需要修改Seekbar.
我不知道要扩展和修改哪个类以及要覆盖哪个布局文件以将海报放入其中。