Android:如何自定义启动器图标下方的标签

5
我的Android应用名称长度为14个字符,没有空格,因此,在启动器图标下显示时,完整的名称不可见。
我想使用另一个名称在启动器图标下显示,这样我就可以将名称分成两个字符串,用空格隔开 - 这样单词就会自动换行。
如何实现这个功能?
3个回答

8

修改您的res\values\strings.xml文件,添加两个字符串:

  1. app_name_wrappable = "应用名称"
  2. app_name = "AppName"

然后修改AndroidManifest.xml文件(或者您希望实现换行行为的任何其他位置)中的内容:

<application 
    android:icon="@drawable/icon" 
    android:label="@string/app_name_wrappable">

同时保留当前所有内容不变。


是的,没错。他不想改变标题栏,只是想改变启动器图标的文本。你的解决方案改变了两者。 - Lee
标题栏将获取android:label中的文本,因此将其他字符串添加到string.xml中将无法解决该问题。 - Macarse
1
我认为实现这个的方法是按照这里提到的设置标签,然后在活动中调用setTitle来具体标记每个活动。 - JohnRock
@Lee:这对我(ics)没有用。它只会更改应用程序列表中的名称(可能是您不想更改的地方)。 - Luis A. Florit
@LuisA.Florit 老实说,过去两年半中他们可能已经改变了所有这些工作方式。如果你有正确的答案,请添加上来,我很乐意点赞并删除我的回答。 - Lee

5

如果您想在应用图标下方看到应用名称,则需要将启动活动的 android:label 更改为所需的应用名称。

应该使用 String.xml 进行更改:

 <string name="app_name">YourAppName</string>//Add this code in Strings.xml file

修改 AndroidManifest.xml 如下所示:
 <application
        android:allowBackup="true"
        android:icon="@drawable/icon2"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.crm_executive.MainActivity"
            android:label="@string/app_name" >
        </activity>
</application>

-1

该文本位于您的AndroidManifest.xml文件中的android:label标签处:

<application android:icon="@drawable/icon" android:label="@string/app_name">

你应该更改那个字符串来解决你的问题。


由于清单使用了@string/app_name,因此您实际上需要在strings.xml资源文件中更改名称。 - Guzba
是的,我尝试过这个方法,但是当我这样做时,它也会更改每个活动顶部显示的名称,而到目前为止,它一直是应用程序的名称...那么这是否意味着我需要在每个活动中手动设置一个名称来覆盖默认行为? - JohnRock
@johnrock 你可以使用自定义标题栏。 - Macarse
2
当你只需要两个不同的字符串资源时,就没有必要编写大量代码来创建自定义标题栏。 - Lee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接