我有4个片段。它们包括HomeFragment,Rainfall,rainday和yieldFragment。 如果现在我正在降雨片段,那么我按后退按钮, 我希望片段将返回Home片段(默认情况下)。 但是现在我的应用情况是按下后退键, 申请已经结束。我已尝试使用onBackpressed,但我认为我的onBackPressed无法正常工作。
我应该为这种情况做些什么..?任何人都可以回答。 我试过这个......
public void onBackPressed() {
fragment=new HomeFragment();}
如果有人知道,请帮帮我。
答案 0 :(得分:0)
,如图所示覆盖onResume() 下面。它会给你回叫设备后退按钮。
@覆盖 public void onResume(){
(define (product . args)
(if (null? args)
(list '())
(apply append
(map (lambda (rest)
(map (lambda (first)
(cons first rest))
(car args)))
(apply product (cdr args))))))
答案 1 :(得分:0)
将片段事务添加到后台堆栈,如下所示:
getSupportFragmentManager().beginTransaction()
.replace(R.id.your_fragment_id, RainfallFragment())
.addToBackStack(null)
.commit()
如果您正在扩展AppCompatActivity并使用最新版本的支持库,则无需执行任何其他操作。但如果情况并非如此,请在您的活动中覆盖onBackPressed():
@Override
public void onBackPressed() {
if (getSupportFragmentManager().getBackStackEntryCount() > 0) {
getSupportFragmentManager().popBackStack();
} else {
finish();
}
}