3.
4.
下面再列出这个应用程序的界面配置文件和字符串文件。
界面配置文件在res/layout目录中,main.xml文件对应MainActivity的界面:
view plaincopy to clipboardprint?
1.
2.
而sub.xml对应SubActivity的界面:
view plaincopy to clipboardprint?
1.
2. 5. android:layout_height=\ 6. android:gravity=\> 7. 14.
字符串文件位于res/values/strings.xml文件中:
view plaincopy to clipboardprint?
1. 2.
3.
4.
最后,我们还要在工程目录下放置一个编译脚本文件Android.mk:
view plaincopy to clipboardprint?
1. LOCAL_PATH:= $(call my-dir) 2. include $(CLEAR_VARS) 3.
4. LOCAL_MODULE_TAGS := optional 5.
6. LOCAL_SRC_FILES := $(call all-subdir-java-files) 7.
8. LOCAL_PACKAGE_NAME := Activity 9.
10. include $(BUILD_PACKAGE)
这样,整个例子的源代码实现就介绍完了,接下来就要编译了。有关如何单独编译Android源代码工程的模块,以及如何打包system.img,请参考如何单独编译Android源代码中的模块一文。
执行以下命令进行编译和打包:
view plaincopy to clipboardprint?
1. USER-NAMEMACHINE-NAME:~/Android$ mmm packages/experimental/Activity 2. USER-NAMEMACHINE-NAME:~/Android$ make snod
这样,打包好的Android系统镜像文件system.img就包含我们前面创建的Activity应用程序了。
再接下来,就是运行模拟器来运行我们的例子了。关于如何在Android源代码工程中运行模拟器,请参考在Ubuntu上下载、编译和安装Android最新源代码一文。 执行以下命令启动模拟器:
view plaincopy to clipboardprint?
1. USER-NAMEMACHINE-NAME:~/Android$ emulator
模拟器启动起,就可以在屏幕上看到Activity应用程序图标了:
点击Activity这个应用程序图标后,Launcher就会把MainActivity启动起来:
点击上面的Start sub-activity铵钮,MainActivity部就会通过startActivity接口来启动SubActivity:
view plaincopy to clipboardprint?
1. Intent intent = new Intent(\ 2. startActivity(intent);
如下图所示: