Android application的label 和Activity的label 的区别

来源:互联网 发布:江苏卫视网络在线直播 编辑:程序博客网 时间:2024/06/06 02:52

遇到的问题:  我记得以前一直是 在application 里面设置了label就是我们APP的名字。也是桌面显示的当前APP叫什么。。但是今天发现显示的名字和设置的不一样。奇怪哪里出错了吗?还是另有隐情?

后来通过查询。我知道了 application的label 和Activity的label 设置以后对我们页面的title和APP名字是有区别的。

写了个Demo

1、

<application    android:allowBackup="true"    android:icon="@mipmap/ic_launcher"    android:label="APP名字"    android:roundIcon="@mipmap/ic_launcher_round"    android:supportsRtl="true"    android:theme="@style/AppTheme">    <activity android:name=".MainActivity"        android:label="first"        >        <intent-filter>            <action android:name="android.intent.action.MAIN" />            <category android:name="android.intent.category.LAUNCHER" />        </intent-filter>    </activity>    <activity android:name=".SecondActivity"        android:label="second"        >    </activity></application>

首先设置配置文件。设置 application的label   为 APP名字   设置启动的主页面的lable 为 first   第二个页面是second  通过代码
getTitle().toString()

获得当前的lable .

运行APP结果显示:  APP名字是 first  第一个页面显示的lable 是 first  第二个页面显示的lable 是 second


2、修改了一下。。去掉主启动页的lable.重新运行

<application    android:allowBackup="true"    android:icon="@mipmap/ic_launcher"    android:label="APP名字"    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>    <activity android:name=".SecondActivity"        android:label="second"        >    </activity></application>
运行APP结果显示:  APP名字是 “APP名字” 第一个页面显示的lable 是 “APP名字” 第二个页面显示的lable 是 second


总结:Application 和activity 均可设置lable ..activity  的lable 优先级更高。。如果使用。优先使用activity自有lable ..如果 activity 未设置lable 。。那么会默认使用application里面的lable .. 

             APP的名字取决于 启动页所在Activity里面的lable 。。如果未设置。。使用application 的lable