【问题标题】:Android , start The same activity by intentAndroid,按意图启动相同的活动
【发布时间】:2014-05-21 10:08:58
【问题描述】:

是否可以使用 EXTRA 启动位于其顶部的相同活动?

我创建了一个活动和 2 个布局,加载每个活动取决于即将到来的 EXTRA。问题是活动必须通过如下方式调用自己:

startActivity(new Intent(Ali.this , Ali.class).putEXTRA("which" , "2"));
this.finish();

【问题讨论】:

    标签: android android-intent android-activity activity-finish


    【解决方案1】:

    是的,可以试试下面的代码

    Button buttonOne = (Button) findViewById(R.id.button1);
    buttonOne.setOnClickListener(new Button.OnClickListener() {
     public void onClick(View v) {
       Intent intent = new Intent(MainActivity.this,
                        MainActivity.class);
               intent.putExtra("data","SomeData");
                startActivity(intent);
     }
      });
    

    在 Activity onCreate 中添加一些检查,如下代码所示

     @Override
    protected void onCreate(Bundle bd) {
        super.onCreate(bd);
        setContentView(R.layout.filter_activity);
    
        bd = getIntent().getExtras();
        if (bd != null) {
            String data = bd.getString("data");
        }
    }
    

    希望这会有所帮助

    【讨论】:

      【解决方案2】:

      是什么阻碍了您为此使用 Fragments?您可以根据需要替换它们。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多