如何在Android的VerticalGridFragment类中获取选定/聚焦的项目或其索引?

Abh*_*hek 4 android android-fragments leanback

我需要获取 VerticalGridFragment 的选定/聚焦项目的索引。我在文档https://developer.android.com/reference/android/support/v17/leanback/app/VerticalGridFragment.html 中找到了设置所选项目的方法,即setSelectedPosition(int position)设置所选项目位置.

但是我在文档中找不到任何提供所选项目或其索引的方法。

有人可以帮我找到解决方法来获取 VerticalGridFragment 的选定项目吗?

小智 5

你得到选定的项目位置。

private final class ItemViewSelectedListener implements OnItemViewSelectedListener {
        @Override
        public void onItemSelected(Presenter.ViewHolder itemViewHolder, Object item, RowPresenter.ViewHolder rowViewHolder, Row row) {
            int position=  mAdapter.indexOf(item);

        }
}
Run Code Online (Sandbox Code Playgroud)


Eva*_*Ngo 0

你无法获取对焦位置,但可以获取对焦对象。setAdapter(mAdapter);您可以编写以下方法:

setOnItemViewSelectedListener(new OnItemViewSelectedListener() {
        @Override
        public void onItemSelected(Presenter.ViewHolder itemViewHolder, Object item, RowPresenter.ViewHolder rowViewHolder, Row row) {
            Object object = (Object) item;
            //can write somethings here
        }
    });
Run Code Online (Sandbox Code Playgroud)

  • 我们可以得到这个位置。请不要提供误导性事实! (3认同)