У меня есть 4 различных мероприятия в моем приложении. Предположим, что они: Main
, Main2
, Main3
и Main4
. Каждый из них имеет свой собственный конкретный android:label
, такой как: home
, , page2
и page3
соответственно.Как получить андроид: ярлык для определенной деятельности?
Я пытаюсь получить все метки для каждого вида деятельности. Как-то в приведенном ниже коде показан только ярлык для первого действия. Как я могу исправить эту проблему? Так что в принципе, я могу получить 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 Я пытаюсь построить объект JSON с именем labelName и activityName. – Bun
«Как получить доступ к названию ярлыка на основе labelRes из каждого действия?» - у вас, похоже, есть код для этого уже в форме вызова 'getString()'. – CommonsWare