0

This is my fragment but i want to handle the back button when pressed i want to perform some action on it.

public class BusinessDetail extends Fragment {

    public TextView headlineSecond;
    String headline;        

    public BusinessDetail() {

    }

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_business_detail, container, false);

        headline =getArguments().getString("headline");

        return view;
    }


    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

        headlineSecond = (TextView) view.findViewById(R.id.id_headline_second_business);


        headlineSecond.setText(headline);
    }

    public boolean onBackPressed() {
        Log.d("ashu","back button pressed");
        return false;
    }
}

2 Answers2

0

Refer to this article : Android Fragment Handle back pressed

It involves listening to on KEY_BACK pressed.

General Grievance
  • 4,555
  • 31
  • 31
  • 45
Ayusch
  • 417
  • 7
  • 17
0

Try below code to manage backpress :

 @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        try {
                view.setFocusableInTouchMode(true);
                view.requestFocus();
                view.setOnKeyListener(new View.OnKeyListener() {
                    @Override
                    public boolean onKey(View v, int keyCode, KeyEvent event) {
                        if (keyCode == KeyEvent.KEYCODE_BACK) {
                              //other stuff
                                return true;
                        }
                        return false;
                    }
                });

            } catch (Exception e) {
                e.printStackTrace();
            }
}
R G
  • 461
  • 3
  • 15