我有一个root活动(调用root),当用户点击root中的一个视图时,用户将被带到一个孩子。
有时,(通常基于条件),用户将使用以下代码直接从子到root:
Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
如何从root(Mainactivity)中找出root是否已从child启动。
用例:当用户显示MainActivity时,我想显示Toast
,只有当他来自具有FLAG_ACTIVITY_CLEAR_TOP标志的孩子时才会显示。
所以我希望能够做到以下几点:
在MainActivity
或root
:
if (came_from_child_with_intent_flag()){
showToast()
}
答案 0 :(得分:1)
您可以像这样添加额外内容:
Intent intent = new Intent(this, MainActivity.class);
Bundle b = new Bundle();
b.putInt("isFromChild", true); //Your id
intent.putExtras(b); //Put your id to your next Intent
startActivity(intent);
在你的onCreate of Root中得到额外的东西:
Bundle b = getIntent().getExtras();
Boolean value = b.getBoolean("isFromChild");
如果它不是来自孩子那么vaule将等于null 如果剂量有附加物,则束将为空。