我在我的應用程序中有4個不同的活動。假設他們是:Main
,Main2
,Main3
和Main4
。每一個都有自己特定的android:label
,如:home
,page1
,page2
和page3
。如何獲取特定活動的android:label?
我試圖獲得每個活動的所有標籤。不知何故,下面的代碼只顯示第一個活動的標籤。我該如何解決這個問題?所以基本上,我可以得到labelRes
爲每個活動。如何根據每個活動的labelRes
訪問標籤名稱?
ActivityInfo[] activityInfo = getActivityList(getApplicationContext());
for(int i = 0; i < activityInfo.length; i++) {
Log.i("class name: ", activityInfo[i].name);
Log.i("label: ", getLabelName(activityInfo[i].labelRes));
}
public String getLabelName(int i) {
String label = null;
try {
label = getResources().getString(
getPackageManager().getActivityInfo(getComponentName(), i).labelRes);
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return label;
}
你標籤的東西,您分配給該活動並且它是靜態的。那麼爲什麼你需要通過代碼獲得活動標籤? – CopsOnRoad
@Jack我想用labelName和activityName構造JSON對象。 – Bun
「如何根據每個活動的labelRes訪問標籤名稱?」 - 你的'getString()'調用形式,你似乎已經有了代碼。 – CommonsWare