请假设该设备没有任何触摸输入。所有控制都通过键盘导航完成。
我想在键盘事件上显示菜单,并将重点放在某个项目上。
当前代码适用于渲染项目。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
// menu button
case 41:
if (recyclerView.getVisibility() == View.VISIBLE) {
recyclerView.setVisibility(View.INVISIBLE);
} else {
recyclerView.setVisibility(View.VISIBLE);
// focus to 9th item
recyclerView.getChildAt(8).requestFocus();
}
default:
return super.onKeyDown(keyCode, event);
}
}
如果我想专注于第 20 项,我的代码将会中断。
如何专注于未渲染的项目?RecyclerView 还应该滚动到包含第 20 个项目的位置。
