更改应用程序名称和活动标签时的Android奇怪行为

时间:2011-10-16 06:17:15

标签: android label manifest

我面临着与android清单文件非常奇怪的问题。

我已经表现出类似的东西......

<application android:icon="@drawable/icon" android:label="TestApplication">
    <activity android:name=".Test"  android:label="Test"  >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

</application>

然后在那种情况下,我的应用程序的名称是“TestApplication”,它应该出现在带有图标的设备菜单上。 启动器活动的名称为“Test”,应用程序启动后应显示在标题栏上。

但问题是应用程序显示名称“Test”作为应用程序名称,菜单上带有图标.....但它必须显示“TestApplication”,因为我已经设置了应用程序名称。

我很困惑,为什么它将启动器活动名称显示为应用程序名称,但我明确指定了应用程序名称.....

请解决问题

由于

尼基尔

2 个答案:

答案 0 :(得分:8)

这是应该如何工作的。如果为启动活动指定标签,则该标签将显示在图标下方。如果未指定标签,则将使用应用程序名称。

如果您希望图标旁边的名称为TestApplication,则必须从“活动”中删除该标签。如果您希望标题为Test,则需要创建custom title bar.

答案 1 :(得分:0)

<application android:icon="@drawable/icon" android:label="TestApplication">
   <activity android:name=".Test"  android:label="Test">
     <!-- See added android:label below -->
     <intent-filter android:label="TestApplication">
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
   </activity>
</application>

如果Intent没有自己的名称,它将从父级继承 - 在本例中为Activity。有关详细信息,请查看this question