0

我有一组相互协调以完成某些交易
的活动。交易完成后,我再次被重定向到第一个活动以进行新交易……
我想要的是在交易完成后。 .当我被重定向到第一个活动时,当我按下 时,应用程序应该关闭back key,即,我不想看到以前的事务,它应该看起来像应用程序刚刚启动.. 应该怎么做? ?

另外,我不想finish()在交易进行时进行活动......在交易完成后,只有先前交易中的所有活动都应该被杀死......
而且也startActivityForResult()不会解决我的问题。

请提出你的答案..

4

3 回答 3

1

一种简单的方法:

在第一个活动中使用公共静态变量。

并从其他活动中更改它们 mainActivity.VariableName = "whatever" 当您返回主要活动时,您将拥有所需的所有数据。

于 2012-08-18T05:11:36.480 回答
1

你为什么不覆盖back-button按下的方法,然后做任何你想让应用程序表现得像你想要的那样的事情。覆盖该onBackPressed()方法,如果您希望应用程序重新启动,则创建一个启动您的第一个活动的意图,或者finish()如果您想关闭应用程序(但您也不想这样做)

于 2012-08-18T04:41:35.970 回答
0

使用以下步骤:

  1. 在 FirstActivity 中获取一个静态布尔变量

    公共静态布尔killApplication = false;

  2. 在您的 FirstActivity 中覆盖 onBackPressed 方法,例如

    public void onBackPressed()
    {
        super.onBackPressed();
    
        FirstActivity.killApplication = true;
    
    }
    
  3. 在所有活动中覆盖 onResume 方法,例如

     protected void onResume()
     {      
         if (FirstActivity.killApplication) 
         {
             finish();
         }
     }
    
  4. 在您的 FirstActivity onCreate() 方法中设置killApplication = false 。

于 2012-08-18T06:27:47.650 回答