我正在开发一个基于Android TV
的应用程序,其中涉及到一个recycler view
。如何将焦点设置在想要的位置?(我已经尝试过 scrollToPosition
和 smoothScroller
,但它们不起作用)。提前感谢您的帮助!
我正在开发一个基于Android TV
的应用程序,其中涉及到一个recycler view
。如何将焦点设置在想要的位置?(我已经尝试过 scrollToPosition
和 smoothScroller
,但它们不起作用)。提前感谢您的帮助!
setFocusable(true)
和 setFocusableInTouchMode(true)
方法。@NonNull
@Override
public ProgrammeAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.rv_item_programme, parent, false);
view.setFocusable(true);
view.setFocusableInTouchMode(true);
sDefaultBackgroundColor = ContextCompat.getColor(parent.getContext(), android.R.color.transparent);
sSelectedBackgroundColor = Color.parseColor("#66ffe680");
updateEPGTitleRowBackgroundColor(view, false);
view.setOnFocusChangeListener(mOnFocusChangeListener);
view.setOnKeyListener(mOnKeyListener);
return new ViewHolder(view);
}
编辑:
您可以尝试调用
mRecyclerView.getChildAt(0).requestFocus();
聚焦特定项的方法。只需将0替换为您想要的项的索引。