背景片段上的编辑文本仍然可编辑

1 android background android-edittext

我在使用带有多个片段的 EditText 时遇到问题。我有两个片段:FragmentOne 和 FragmentTwo,每个片段都有 EditText。在 FragmentOne 之上添加 FragmentTwo 后:

android.support.v4.app.FragmentManager fragmentManager =getActivity().getSupportFragmentManager()
fragmentManager.beginTransaction().add(R.id.frame,new FragmentTwo()).addToBackStack(null).commit;
Run Code Online (Sandbox Code Playgroud)

当我按键盘上的 Enter 时,光标会转到 FragmentOne 上的 EditText。如何修复它?类似的问题是当背景片段仍然可点击时,但我已经解决了。这个问题怎么办?

Dur*_*han 5

那是因为,您没有隐藏/删除前一个片段。在添加新片段之前识别上一个片段并将其隐藏。

fragmentManager.beginTransaction().add(R.id.frame,new FragmentTwo()).addToBackStack(null).commit;
Run Code Online (Sandbox Code Playgroud)

这应该是

fragmentManager.beginTransaction().add(R.id.frame,new FragmentTwo()).hide([current fragment]).addToBackStack(null).commit;
Run Code Online (Sandbox Code Playgroud)

如果您为片段命名,则可以通过以下方式找到片段

fragmentManager.findFragmentByName("fragname");
Run Code Online (Sandbox Code Playgroud)