2011-11-29 125 views

回答

0

您可以使用startActivityForResult(Intent intent, int requestCode)方法啓動新的活動。如果在該新活動中按下後退按鈕,它將向上一個活動發送取消結果,而後者又必須處理該結果。因此,在第一個活動,抓導致使用:

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (resultCode == RESULT_CANCELLED) { 
     // do something 
    } 
} 

從這裏,所有你需要做的就是創建一個實現你的願望刷新的方法,並從上面的代碼中調用它。

+1

我認爲他意味着瀏覽網頁,所以用戶不會切換活動,而是後退按鈕導航回頁面 – Craigy

1

你可以重載'onBackPressed'方法。

顯示下面的示例代碼。

package com.test.phonegap; 

import android.os.Bundle; 

import com.phonegap.DroidGap; 

public class TestPhoneGapActivity extends DroidGap { 

    String Index_html = "file:///android_asset/www/index.html"; 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     super.loadUrl(Index_html); 
    } 

    @Override 
    public void onBackPressed() { 
     //this.loadUrl(Index_html); 
     this.loadUrl("javascript:method_name()"); 
    } 
} 

  • 變化

如果當返回鍵按下你想控制頁面導航, 調用javascript函數在 'onBackPressed' 的方法。

上面的代碼在返回時會調用名爲'method_name'的函數javasctipt。 ,你可以在javascript函數中編寫'頁面控制代碼'。

+1

嘿!感謝您的答覆。我需要刷新,但不是頁面特定的。因此,舉例來說,如果我的層次結構是3層深的,我不想按下3級的後退按鈕,將我帶到1層而不是2層。我猜這可能是Javascript解決方案嗎? – khalid13