2010-11-02 96 views
1

在ui我有一個後退按鈕顯示。有三種活動說A,B,C。活動A是啓動畫面。活動B是主屏幕。活動C是編輯屏幕。在編輯屏幕上,我只有一個後退按鈕。當用戶按下時,我打開活動B,其中也包含某種類型的http請求和響應。我想從堆棧中的前一個活動應該顯示?我怎麼能做到這一點?我可以按下設備的後退按鈕打開以前的活動?活動和返回按鈕

當我按下設備上的按鈕沒有去任何http請求?當我按下ui後退按鈕時,我想實現這種行爲。

回答

0

首先,在UI中顯示後退按鈕並不好。 每個安卓設備都有一個後退按鈕。

如果您想以不同的方式處理後退按鈕,請檢查this link

4

我想在你的背部按鈕,你可以要求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開放

希望這有助於你

0

與onkeydown事件的解決方案可能會奏效,但使用onBackPressed在我看來是容易得多。

可以攔截返回鍵,帶有以下重寫:

@Override 
public void onBackPressed() 
{ 
    //logic here, for example an intent 
    Intent intent = new Intent(this, ActivityB.class);  
    startActivity(intent); 
} 

而對周圍的其他方法super.onBackPressed();返回到以前的歷史活動。