java - Intent putExtra 持续存在

标签 java android android-intent

我在 Intents 和 putExtra 方面遇到问题。 我想做的是这样的: 在 Activity A(不是我的 MainActivity)中,当我单击按钮时,它将关闭我的所有 Activity ,发送字符串并启动我的主要 Activity 。出于测试目的,它将显示一个测试对话框,其中包含我的string.到目前为止一切都很好,可以按照我的需要工作。

问题是,如果我重新启动我的 MainActivity(我需要这样做,它就像一个购物 list ,我需要启动一个新的购物 list )带有 的对话框putExtra 字符串再次显示。

这是我的代码 fragment :

在 Activity A 中:

@Override
public void onClick(View v) {
    Intent intent = new Intent(Gestionarez.this, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_ANIMATION);
    intent.putExtra( "paramName", str );
    startActivity( intent );
    // TODO Auto-generated method stub
    dialog.dismiss();
    dialog.cancel();
}

在我的MainActivity

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    LoadPref();

    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        String myParam = extras.getString("paramName");
        ShowAlertMessage(this, "TEST", myParam + "");

    } else {

    }

}

这就是当我需要开始新的购物 list 时重新启动我的 MainActivity 的方法:

Intent intent = getIntent();
finish();
startActivity(intent);

最佳答案

替换

Intent intent = getIntent();
                finish();
                startActivity(intent);

Intent intent = new Intent(this, ActivityB.class);
                finish();
                startActivity(intent); 

关于java - Intent putExtra 持续存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17901596/

相关文章:

java - RecyclerView OnClick 带到另一个 Fragment

android - 在 sd 上创建一个带有子文件夹的文件夹

android - 我们如何知道 Activity 共享元素转换将要运行?

android - 如何让正在进行的音频任务继续进行?

java - Android 操作系统从版本 9 升级到 10 后无法获取设备 ID

android - 如何获取当前显示的 fragment ?

java - build 雷达

java - 如何创建可变数量的 arrayLists 以及列表中可变数量的项目?

java - Spring MVC 表单标签 - 单选按钮

java - 关于查询专辑的 Genres.Members.EXTERNAL_CONTENT_URI