cấu trúc ứng dụng của tôi trông giống như:Xác định đoạn backstack trạng thái trống rỗng trong android
SplashActivity -> MainActivity -> (switching between many fragments)
Những gì tôi mong đợi: kết thúc ứng dụng từ hoạt động chính khi mảnh trở lại ngăn xếp đếm là zero. Đây là cố gắng của tôi:
Trong SplashAcitivty
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getIntent().getBooleanExtra("exit", false)) {
finish();
}
}
Trong MainActivity:
@Override
public void onBackPressed() {
// I need to implement this method
if(backstackCount() == 0){
Intent intent = new Intent(this, SplashActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra(SplashActivity.EXIT_KEY, true);
startActivity(intent);
}else{
super.onBackPressed();
}
}
Vì vậy, xin vui lòng cho tôi biết làm thế nào tôi có thể xác định lại stack khi nó 's có sản phẩm nào? Bởi vì tôi sử dụng thư viện SlideMenu
, tất cả các đoạn của tôi chuyển đổi nhiều lần và chúng được thêm vào ngăn xếp sau khi chuyển đổi. Có dạng như sau:
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content_frame, fragment)
.addToBackStack(null)
.commit();
bạn có thể sử dụng 'getBackStackEntryCount' – dreamcoder
@dreamcoder Cảm ơn, nó hoạt động. Tôi không tin rằng tôi không biết điều này. Bạn có thể vui lòng trả lời câu hỏi của tôi sau đó tôi có thể chấp nhận nó? – R4j