如果要转换的页面并不单只是背景,颜色或文字内容的不同,而是Activity的置换,那就不是单单改变Layout就能完成的,尤其是需要传递的变量不像网页可以通过Cookie或Session,在程序里要移交主控权到另外一个Activity,光靠先前的Layout技巧是办不到的。
那要如何解决Activity控制权的移交呢?在Android的程序设计中,可在主程序里使用startActivity()这个方法来调用另外一个Activity(主程序本身即是一个Activity),但当中的关键并不在startActivity这个方法,而是Intent这个特有的对象。Intent就如同其英文字义,是“想要”或“意图”之意,在主Activity当中,告诉程序自己试什么,并想要前往哪里,这就是Intent对象所处理的事了。在本范例并没有特别的Layout布局,而是直接在主Activity(Activity1)当中部署一个按钮,当单机按钮的同时,告诉主Activity前往Activity2,并在Activity2里创建一个回到Activity的按钮,本范例将利用此简易的程序描述,示范如何在一个Activity中调用另一个Activity的手法。
运行结果:
点击Button之后:
点击Button之后返回之前的Activity
操作步骤:
step1:新建Android项目EX03_09_IntentDemo
step2:res->values->添加color.xml
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<color name="white">#FFFFFF</color>
<color name="black">#000000</color>
<color name="red">#FF0000</color>
<color name="darkgray">#A9A9A9</color>
<color name="lightskyblue">#87CEFA</color>
<color name="pink">#FFC0CB</color>
<color name="lightpink">#FFB6C1</color>
<color name="darkblue">#00008B</color>
</resources>
step3:res->layout->main.xml
为了凸显Activi