在 AndroidManifest.xml 中,应用程序标签具有:
android:label="@string/app_name"
res/values/strings.xml 中的 app_name 读取“我的应用程序”。
但是在模拟器和附加设备上运行或调试后,主屏幕上的应用程序图标显示主活动的标签而不是应用程序标签。这是预期的行为,如果不是,为什么会发生?
在 AndroidManifest.xml 中,应用程序标签具有:
android:label="@string/app_name"
res/values/strings.xml 中的 app_name 读取“我的应用程序”。
但是在模拟器和附加设备上运行或调试后,主屏幕上的应用程序图标显示主活动的标签而不是应用程序标签。这是预期的行为,如果不是,为什么会发生?
是的,这是预期的行为。应用程序名称将显示在设置中的应用程序选项卡中。主屏幕显示启动器活动的标签。
如果您想将 app_name 属性显示为启动器图标下方的应用程序标签,您可以在 android 清单文件的应用程序标记中指定 android:label 属性。
例如:
<application
android:name=".MyApp"
android:icon="@drawable/myIcon"
android:label="@string/app_name">
此行为的解决方法:
在清单中:
<application
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
在MainActivity 的 onCreate中:
getSupportActionBar().setTitle(R.string.activity_name);
通过这样做,应用程序名称将出现在主屏幕上,您仍然可以为启动器活动设置不同的标题。
人们看到这里,我遇到了同样的问题,终于解决了。
Launcher 仅显示 mainActivity,因为 Phone Launcher 首选活动标签。
因此,想要显示 Application lab 而不是 MainActivity,他应该删除以下行:
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter android:label="@string/app_name" >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
删除这个:
android:label="@string/title_activity_main"