简短版: 如何防止片段失去焦点?
长版: 我正在使用片段事务在现有活动之上覆盖 3 个片段。
在这里你可以看到它的样子。片段 C 是作为活动的一部分显示的原始片段。在某个事件之后,我提交了一个添加新片段的事务:
ContainerFragment containerFragment = new ContainerFragment();
FragmentA aFragment = new FragmentA();
FragmentB bFragment = new FragmentB();
bFragment.setListener(listener);
FragmentTransaction transaction = manager.beginTransaction();
transaction.add(R.id.c_fragment, containerFragment, TAG_CONTAINER);
// added within the layout used by containerFragment
transaction.add(R.id.a_fragment, aFragment, TAG_A);
transaction.add(R.id.b_fragment, bFragment, TAG_B);
transaction.addToBackStack(TRANSACTION_NAME);
transaction.commit();
注意:我没有使用单独的活动来启动片段 A 和 B,因为我不想暂停原始活动。
无论如何,这很好用。问题来自我使用 Dpad 的事实,我可以单击向下按钮,焦点离开 Fragment A 并选择 Fragment C 中的某些内容(Fragment B 不可聚焦)。如何防止焦点离开片段 A?
谢谢 :)