在ui我有一個後退按鈕顯示。有三種活動說A,B,C。活動A是啓動畫面。活動B是主屏幕。活動C是編輯屏幕。在編輯屏幕上,我只有一個後退按鈕。當用戶按下時,我打開活動B,其中也包含某種類型的http請求和響應。我想從堆棧中的前一個活動應該顯示?我怎麼能做到這一點?我可以按下設備的後退按鈕打開以前的活動?活動和返回按鈕
當我按下設備上的按鈕沒有去任何http請求?當我按下ui後退按鈕時,我想實現這種行爲。
在ui我有一個後退按鈕顯示。有三種活動說A,B,C。活動A是啓動畫面。活動B是主屏幕。活動C是編輯屏幕。在編輯屏幕上,我只有一個後退按鈕。當用戶按下時,我打開活動B,其中也包含某種類型的http請求和響應。我想從堆棧中的前一個活動應該顯示?我怎麼能做到這一點?我可以按下設備的後退按鈕打開以前的活動?活動和返回按鈕
當我按下設備上的按鈕沒有去任何http請求?當我按下ui後退按鈕時,我想實現這種行爲。
首先,在UI中顯示後退按鈕並不好。 每個安卓設備都有一個後退按鈕。
如果您想以不同的方式處理後退按鈕,請檢查this link。
我想在你的背部按鈕,你可以要求b活動的意圖和你的HTTP請求和響應代碼是在的onCreate功能
但在設備上的後退按鈕不會叫的onCreate
有兩種解決方案這
一個爲Macarse說,聽的onkeydown
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
Intent i = new Intent(ActivityC.this,ActivityB.class);
startActivity(i);
return true;
}
return super.onKeyDown(keyCode, event);
}
,第二種方法是寫你的代碼在調用onStart ActivityB
的protected void onStart() {
//http request and response code
}
這在onStart會調用這個全時ActivityB開放
希望這有助於你
與onkeydown事件的解決方案可能會奏效,但使用onBackPressed在我看來是容易得多。
可以攔截返回鍵,帶有以下重寫:
@Override
public void onBackPressed()
{
//logic here, for example an intent
Intent intent = new Intent(this, ActivityB.class);
startActivity(intent);
}
而對周圍的其他方法super.onBackPressed();
返回到以前的歷史活動。