问题
I am using fragments in my application.I have a fragment that contains EditText
and some Dialogfragment
.
When i click one particular widget it will move to next fragment. I need the first fragment in the backstack,so i added addToBackStack method also.
The second fragment doesn't contain any EditText
. Now the problem is, when we touch or press the second fragment, EditText
in the first fragment get the focus and the dialogs are coming.
I got the following code
getView().setFocusableInTouchMode(true);
getView().requestFocus();
I placed this in onResume()
. But onResume()
will not be called according to some android documents. What I should I do? This is the picture of the second activity that shows the problem
回答1:
Solution to my question is instead of adding the fragment just use replace and one more thing we can avoid that by giving click to the layout also
回答2:
From your question I understood that your Current Fragment doesn't have focus
Try Following
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInnstance) {
View view = inflater.inflate(R.layout.your_layout, container, false);
view.setOnClickListener(this);
return view;
}
来源:https://stackoverflow.com/questions/25421250/how-to-remove-the-focus-of-the-back-stack-fragment