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
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
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