第十课:Activity 及其子类的使用四:配置 Activity

Android 应用要求所有的应用程序组件(Activity、Service、ContentProvider、BroadcastReceiver)都必须显示的进行配置。

只要为<application.../>元素添加<activity.../>子元素即可配置 activity。例如如下的配置:

<activity android:name=".SampleActivity"
	android:icon="@drawable/small_pic.png"
	android:label="@string/freneticLabel"
	android:exported="true"
	android:launchMode="singleInstance">
	...
</activity>

从上面的配置片段可以看出,配置 Activity 时通常指定如下几个属性:

  • name:指定该 Activity 的实现类的类名
  • icon:指定该 Activity 对应的图标
  • label:指定该 Activity 的标签
  • export:指定该 Activity 是否允许被其他应用调用。如果将该属性设为 true,那么该 Activity 将可以被其他应用调用
  • launchMode:指定该 Activity 的加载模式。该属性支持 standard、singleTop、singleTask 和 singleInstance 这4种加载模式。这部分的详细说明请参照:activity于AndroidManifest中的一些配置属性
除此之外,配置 Activity 时通常还需要指定一个或多个<intent-filter.../>元素,该元素用于指定该 Activity 可响应的 Intent。例如:
<?xml version="1.0" encoding="utf-8"?>
<manifest
	xmlns:android="http://schemas.android.com/apk/res/android"
	package="org.crazyit.app"
	android:versionCode="1"
	android:versionName="1.0">
	<uses-sdk
		android:minSdkVersion="11"
		android:targetSdkVersion="17" />
	<application
		android:icon="@drawable/ic_launcher"
		android:label="@string/app_name">
<activity
	android:name=".OtherActivity"
	android:label="@string/app_name">
	<!-- 指定该Activity是程序的入口 -->
	<intent-filter>
		<action android:name="android.intent.action.MAIN" />
		<category android:name="android.intent.category.LAUNCHER" />
	</intent-filter>
</activity>
<!-- 定义两个Activity -->
<activity
	android:name=".ExpandableListActivityTest"
	android:label="查看星际兵种">
</activity>
<activity
	android:name=".PreferenceActivityTest"
	android:label="设置程序参数">
</activity>
	</application>
</manifest>

关于 AndroidManifest.xml 文件的详细配置说明,请参考:AndroidManifest.xml 配置文件详解

发布了34 篇原创文章 · 获赞 32 · 访问量 11万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章