Tôi đang làm việc trên một dự án và tôi cần có khả năng sử dụng nút quay lại trong từng đoạn để điều hướng giữa các đoạn trước đó, tôi có phương pháp được viết để làm như vậy bằng cách sử dụng mũi tên quay lại trong thanh tác vụ, tuy nhiên, tôi muốn có thể sử dụng chức năng tương tự trên nút quay lại được nhấn. Tôi không muốn sử dụng ngăn xếp lại. Có cách nào để làm việc này không?Sử dụng onBackPressed() trong Android Fragments
EDIT
Thay vì sử dụng ngăn xếp trở lại tôi muốn để có thể gọi trở lại phương pháp trước đây khi người dùng nhấp vào nút quay lại. Tôi cần phải sử dụng phương pháp gobackpressed trong các mảnh vỡ. Điều này có thể không? Tôi hy vọng điều này rõ ràng và súc tích. Xin lỗi vì bất kỳ sự nhầm lẫn nào gây ra ở trên.
Trở lại trang trước
public void gobackToPreviousFragment(String preFragmentTag, Fragment preFragment){
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.setCustomAnimations(R.animator.close_slide_in,R.animator.close_slide_out);
ft.show(preFragment);
//**BY REMOVING FRAGMENT, WHEN USER TRIES TO REVISIT, FRAGMENT IS BLACK**
ft.remove(fm.findFragmentByTag(Misc.currentContentFragmentTag));
ft.addToBackStack(null);
ft.commit();
Misc.currentContentFragmentTag = preFragmentTag;
createBar(preFragment);
}
Go Forward
public void gotoNextFragment(String nextTag, Fragment nextFragment){
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.setCustomAnimations(R.animator.enter_slide_in, R.animator.enter_slide_out);
boolean newlyCreated = false;
if(nextFragment == null){
nextFragment = Fragment.instantiate(this, nextTag);
newlyCreated = true;
}
//hide current fragment
ft.hide(fm.findFragmentByTag(Misc.currentContentFragmentTag));
if(newlyCreated){
ft.add(R.id.content_frame, nextFragment, nextTag);
}
else{
ft.show(nextFragment);
}
ft.addToBackStack(null);
ft.commit();
Misc.currentContentFragmentTag = nextTag;
createBar(nextFragment);
}
Đây là những cách để điều hướng qua lại, và tôi muốn để có thể thực hiện quay trở lại phương pháp trên onBackPressed(). Điều này có nghĩa không?
vấn đề tương tự giải quyết [ở đây] (https: // stackoverflow.com/a/46425415/6831069)> Thưởng thức –