注意:我读过有关更改应用名称的帖子。我的应用程序的标签应该是正确的,但它不是。
我有一个我制作的Android应用程序。 它由不同的活动组成。 但是当我下载我的应用程序时,它被称为“登录”。不应该是这种情况,我希望它被称为其他东西。我怎样才能做到这一点?
这是我的清单文件:
....
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
</activity>
<activity
android:name=".LoginActivity"
android:label="@string/title_activity_login">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
和我的字符串文件:
<resources>
<string name="app_name">Exigentia</string>
<string name="action_settings">Settings</string>
<string name="EmergencyButton">EmergencyButton</string>
<string name="title_activity_login">Sign in</string>
<!-- Strings related to login -->
<string name="prompt_email">Email</string>
<string name="prompt_password">Password (optional)</string>
<string name="action_sign_in">Sign in or register</string>
<string name="action_sign_in_short">Sign in</string>
<string name="error_invalid_email">This email address is invalid</string>
<string name="error_invalid_password">This password is too short</string>
<string name="error_incorrect_password">This password is incorrect</string>
<string name="error_field_required">This field is required</string>
<string name="permission_rationale">"Contacts permissions are needed for providing email
completions."
</string>
</resources>
那么为什么我的应用程序显示“登录”作为其名称,而不是Exigentia?
注意:这是在我点击我的应用并启动它之前。一旦启动,登录应该在顶部
答案 0 :(得分:1)
根据App Manifest的<activity> label
属性:
活动的用户可读标签。当必须向用户表示活动时,标签显示在屏幕上。它经常与活动图标一起显示。
如果未设置此属性,则使用整个应用程序的标签集(请参阅&lt; application&gt;元素的标签属性)。
应用程序可以有多个活动表示的多个入口点。例如,您希望创建一个应用程序,该应用程序在用户的手机上同时具有教师和学生入口点,而无需他们安装多个应用程序。这也意味着您可以分别为活动分配不同的标签,例如教师和学生。
基本上,当您使用单个主要活动创建应用时,只需将应用名称放在&lt; application&gt;上即可。标签和主菜单中的图标将具有该标签。显然,对于多个Activity入口点,这不会很好,因此您可以选择逐个覆盖它。
我认为您希望实现标签显示在应用栏上(操作栏,工具栏,您可以命名)。这应该通过将标签放在布局XML中的应用栏上或使用代码来完成,例如getSupportActionBar().setTitle(R.string.title_activity_login);
。
答案 1 :(得分:0)
您的应用中是否有翻译?这可能是问题,因为android显示本地字符串(如果存在)。如果您有翻译,请确保已更改所有strings.xml文件中的app_name字符串。确保您有翻译的有保证的方法是转到您的项目目录,看看“... \ app \ src \ main \ res”下是否有多个“值”文件夹,如“values-en”,“values- de“等。
答案 2 :(得分:0)
无需在所有活动标签中添加标签。尝试下面的一个:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity"
android:theme="@style/AppTheme.NoActionBar" />
<activity android:name=".LoginActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>