2012-04-02 46 views
0

因此,我有两个我的表单上的后退和下一个按钮,在第一个表单上,当你按next时它加载第二个表单,现在如果你按下第二个表单上的后退按钮,它会加载第一个表单形式,但是现在有两种意图用于相同的形式。我如何防止这种情况发生?重复使用老的意图android

第一种形式启动按钮:

final Button start = (Button) findViewById(R.id.start); 
    start.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      Intent i= new Intent(getApplicationContext(), step_1_to_4.class); 
      startActivity(i); 



     } 
     }); 

第二种形式返回按钮如下:

final Button back = (Button) findViewById(R.id.step1_back_button); 
    back.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 

      Intent i= new Intent(getApplicationContext(), HKA_manual_Calibration_v2_no_tabsActivity.class); 
      startActivity(i); 
     } 
    }); 

因此当用户往返这两个活动,它会导致多种活动创建之间。

+0

谢谢你可以在androidmanifest.xml,“SingleTask”和“SingleInstance”等中做什么。 – DecodeGnome 2012-04-02 15:51:14

回答

0

从上面的代码中,将只有一个的意图在你的情况下,即开始第二种形式的活动。当您按下关键,它实际上恢复先前的活动,谁的意图已经存在(在该活动存在的),并且可以通过getIntent()

+0

我遇到的问题是,当你使用android操作系统后退按钮时,会有多种形式的同一活动。此外,在这种情况下,getIntent()用于什么,我有点困惑。 – yawnobleix 2012-04-02 16:33:37

+0

将'android:launchMode =“singleInstance”'设置为清单中您活动的属性 – waqaslam 2012-04-02 16:56:04

0

机器人进行检索:launchMode =“singleInstance”

添加上述在您的展示文件中为活动行。