Android开发从入门到精通(8) _2

修改AndroidManifest.xml文件 第八章(2)

在Eclipse内打开你的Androidmanifest.xml文件。在本书中还没有大量的讨论这个Androidmanifest.xml文件呢。Androidmanifest.xml文件包含项目的全局设置。更重要的是,Androidmanifest.xml还为项目包含了Intent过滤器。

    第七章讨论了Android如何使用过滤器来排列哪种Intent可以被哪种活动所接受。使这个过程方便的信息就保留在Androidmanifest.xml中了。

注意

每个项目只能有一个Androidmanifest.xml文件。

    如果你的Androidmanifest.xml文件是打开的,它应当如下显示:

<activity android:name=".AndroidViews" android:label="@string/app_name"> 

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

你在这里要看的是AndroidView活动——项目创建的主要活动的Intent过滤器。对于这个文件,你可以增加任何其它的Intent过滤器来交给项目处理。本例中,你要增加处理你创建的Test活动的过滤器。下面是你需要为Intent过滤器增加的代码到Androidmanifest.xml文件中。

<activity android:name=".Test" android:label="Test Activity"> 

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

    增加代码到AndroidManifest.xml文件中确保Android为Test活动传递Intent到正确的地方。完整的AndroidManifest.xml文件应当如下:

<?xml version="1.0" encoding="utf-8"?> 

<manifestxmlns:android=http://schemas.android.com/apk/res/android

package="android_programmers_guide.AndroidViews">

<applicationandroid:icon="@drawable/icon">

<activityandroid:name=".AndroidViews"android:label="@string/app_name">

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

<activityandroid:name=".AutoComplete"android:label="AutoComplete">

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"

/>

</intent-filter>

</activity>

</application>

</manifest>

    现在你的活动可以为Test活动处理Intent呼叫了。要让你的Intent呼叫Test活动,你将要使用和在第七章呼叫电话拨号盘非常类似的结构。下面的代码会设置你的Intent:

注意

当你启动应用程序,将要打开的活动是你创建项目的AndroidViews活动。因此,放置下面的代码在AndroidViews.java中来启动Test活动。

Intent testActivity = new Intent(this, test.class);

这一行创建一个叫做testActivity的Intent。参数test.class告诉呼叫,你要testActivity这个Intent来展示创建的和本活动相关联的Test活动。

警告

当你使用Intents时,不要忘记输入android.content.intent包装。

    最后,使用startActivity()方法来精确启动Test 活动:

startActivity(autocomplete); 

YourcompletedAndroidViews.javafileshouldlooklikethis:

packageandroid_programmers_guide.AndroidViews;

importandroid.app.Activity;

importandroid.os.Bundle;

importandroid.view.Menu;

importandroid.content.Intent;

publicclassAndroidViewsextendsActivity{

/**CalledwhentheActivityisfirstcreated./

@Override

publicvoidonCreate(Bundleicicle){

super.onCreate(icicle);

setContentView(R.layout.main);

/**Set up our Intent /

    在模拟器中运行这个应用程序。Android应当启动AndroidViews活动,紧跟着Test活动。

    在下一节中,你将使用这些技巧来创建一个启动多重活动的应用程序。每个活动将在一个View里,这样你可以应用不同的选项。这个将会给你大量的练习显示并熟练掌握Views和使用活动。

注意

要使用本章剩下的例子,移除本节创建的Test活动。你要继续做没有Test活动的AndroidViews项目的作品。

使用菜单

更多信息请查看 http://www.javady.com/index.php/category/thread

相关推荐