[英]is there a way in android studio to call a single activity from couple of other activities?
請幫忙 。 我試圖從另一個活動中訪問一個特定活動,所以我不會編寫多個代碼。 我從這些不同的活動發送相同類型的“ putExtra”,但使用不同的值來標識活動的來源。
我想要有人告訴我我做錯了什么。
對不起,謝謝...
您無需發送額外的值即可識別調用方Activity
,有一個名為getCallingActivity()
的方法可以為您提供幫助。
但是,如果您通過startActivityForResult()
調用了Activity
,它將僅返回非null值
這是示例代碼:
ComponentName callingActivity = getCallingActivity();
if (callingActivity != null)
{
String activityName = callingActivity.getShortClassName();
if (activityName.endsWith("INVOKING_ACTIVITY_NAME"))
{
//do stuff
}
}
這是您要找的東西嗎?
活動1
Intent i = new Intent(Activity1.this, DestinationActivity.class)
i.putExtra("OriginActivity", "Act1")
startActivity(i)
活動2
Intent i = new Intent(Activity2.this, DestinationActivity.class)
i.putExtra("OriginActivity", "Act2")
startActivity(i)
DestinationActivity
if (savedInstanceState == null) {
Bundle extras = getIntent().getExtras();
if(extras != null) {
if(extras.getString("OriginActivity").equals("Act1")){
// you came from Activity 1
}else if(extras.getString("OriginActivity").equals("Act2")){
// you came from Activity 2
}
等等
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.