如何在一个Activity中访问android:label?

给出代码

Android.xml:

<activity android:name='.IconListActivity'
  android:label='@string/icon_list_activity_name'
/>

Strings.xml:

<string name='icon_list_activity_name>Icon List</string>

如何访问 IconListActivity.class 中的'Icon List'字符串?

PackageManager#getActivityInfo() 返回一个 ActivityInfo 结构,这里有一个 labelRes 和一个 name field,其中的一个就是你需要的。

Log.d("Title", getTitle().toString());

getTitle();得到的就是你设定的值

如果你有 ComponentName,用下面的代码:

PackageManager pm = getPackageManager();
ActivityInfo activityInfo = pm.getActivityInfo (componentName, 0);
Log.d ("ActivityLabel", activityInfo.loadLabel (pm).toString ());