Dav*_*vid 4 android if-statement android-activity
我可以从两个不同的活动A和B到达活动C.活动C有一个按钮.我想检查一下是从C转到C还是从B转到C.如果我从A转到C,我希望按钮做一件事,如果我从B转到C,我想要按钮来做另一件事.
是否可以检查以前的活动是哪个?
像这样......
else if (id == R.id.action_button) {
if (previosActivity == A) {
Intent intent = new Intent(this, NewActivity.class);
startActivity(intent);
}
else if (previosActivity == B) {
Intent intent = new Intent(this, AnotherActivity.class);
startActivity(intent);
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
rga*_*ber 10
当您从任何活动转到活动C时,您可以通过extra意图传递.然后,您可以extra在活动C中检索它并根据需要使用它
例如.
当你从A到C:
Intent mIntent = new Intent(this, ActivityC.class); //'this' is Activity A
mIntent.putExtra("FROM_ACTIVITY", "A");
startActivity(mIntent);
Run Code Online (Sandbox Code Playgroud)
当你从B到C:
Intent mIntent = new Intent(this, ActivityC.class); //'this' is Activity B
mIntent.putExtra("FROM_ACTIVITY", "B");
startActivity(mIntent);
Run Code Online (Sandbox Code Playgroud)
现在在Activity C中,你检索这个:
Intent mIntent = getIntent();
String previousActivity= mIntent.getStringExtra("FROM_ACTIVITY");
Run Code Online (Sandbox Code Playgroud)
然后你可以使用
if (previousActivity.equals("A")){...}
or
Run Code Online (Sandbox Code Playgroud)
if (previousActivity.equals("B")){...}
在你的问题中.
| 归档时间: |
|
| 查看次数: |
7840 次 |
| 最近记录: |