android:label="@string/app_name" 的作用

本文深入解析AndroidManifest.xml中应用标签的引用原理,解释了@string/app_name的作用及其存放位置,帮助开发者更好地理解应用配置与资源文件之间的联系。

在AndroidManifest.xml中  有个 <application android:label="@string/app_name"      其中@string/app_name  的意思是引用(@)资源app_name,这个app_name是string类型。

关于这些引用的资源包含在res/values文件夹下的几个文件中的某个文件里。这几个文件都是资源文件,本来是可以和在一起的,分开是为了区分各种类型。



暂时个人的理解是这样,如果有错,请文明指出。

`android:label="@string/app_name"` 是 Android 清单文件(`AndroidManifest.xml`)中用于设置**组件名称显示文本**的一个属性。 它最常见的用法是给 `Application` 或 `Activity` 设置一个用户可见的标题或应用名。 --- ## ✅ 简明解释 ```xml android:label="@string/app_name" ``` > 意思是:这个组件(如应用、页面)在系统中显示的名字,使用的是字符串资源文件中定义的 `app_name` 的值。 --- ## 📌 应用场景示例 ### 1. 在 `<application>` 上设置(最常见) ```xml <application android:label="@string/app_name" android:icon="@mipmap/ic_launcher"> <activity android:name=".MainActivity" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> ``` 👉 效果: - 这个名字会显示在手机桌面上的应用图标下方(即 App 名称) - 也会出现在“最近任务”列表中的顶部标题 --- ### 2. 在 `<activity>` 上单独设置 ```xml <activity android:name=".SettingsActivity" android:label="@string/title_settings" android:exported="false" /> ``` 👉 效果: - 当用户进入这个 Activity 时,ActionBar / Toolbar 默认显示 “设置” 或你定义的标题 - 不影响桌面图标名称 --- ## 🔧 资源文件支持(多语言 & 多配置) `@string/app_name` 并不是一个固定值,而是指向资源文件中的字符串。 ### 示例:`res/values/strings.xml` ```xml <resources> <string name="app_name">我的购物车</string> <string name="title_settings">设置</string> </resources> ``` ### 支持多语言(例如英文) `res/values-en/strings.xml` ```xml <resources> <string name="app_name">My Shopping Cart</string> <string name="title_settings">Settings</string> </resources> ``` ✅ 系统会根据用户的语言自动选择对应的 `app_name` 显示! --- ## 💡 可以直接写文字吗? 可以,但不推荐: ```xml android:label="我的应用" <!-- 可以工作 --> ``` ❌ 缺点: - 无法支持多语言 - 难以统一管理 - 不符合 Android 最佳实践 ✅ 推荐始终使用 `@string/xxx` 引用资源 --- ## 🖼️ 实际效果展示 | 场景 | 显示内容 | |------|---------| | 手机桌面图标下方 | `android:label` 的值(通常是 `@string/app_name`) | | ActionBar 标题 | 如果 Activity 没单独设置 label,则继承 Applicationlabel | | 最近任务视图(Recents) | 显示当前 Activity 的 label | --- ## ✅ 总结 | 属性 | 含义 | |------|------| | `android:label` | 定义组件的用户可读名称(显示用) | | `"@string/app_name"` | 引用字符串资源,提高可维护性和国际化支持 | | 常见位置 | `<application>`(全局名称)、`<activity>`(页面标题) | | 推荐做法 | 所有文本都放在 `strings.xml` 中,不要硬编码 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值