【问题标题】: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?您可以根据需要替换它们。