2011-11-29 76 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