症状上和昨天完全一样
报错依旧是个这。。。坑爹。。。
难道android你就只会这一种报错么。。。
愤懑的晚饭,然后逐个文件和示例文件对照
最终发现的问题是创建了一个新的Activity名为ResultActivity,但是没有在AndroidManifest。xml文件中声明它
加入如下代码后,调试通过了
<activity android:name=".ResultActivity" android:label="@string/resultLabel"/>
对于这种多个Activity互相调用的程序(点击按钮后切换到另一个Activity)
过程写下来:
工程名为CPTest_1,版本2.2,Application name为产品test1,包名chris.CPTest,选中Create Activity(默认选中),名为CPTest1,SDK版本8
1.生成新的Activity名为CPResult,对应的xml文件名为result.xml
2.在main.xml文件中完成主界面的绘制,加id,制定尺寸。(曾有次不成功,于是使用了proje--》clean,程序通了,但是R.java在一段时间内消失了)
用了两个文本框,一个静态文本,一个按钮
<TextView
android:id="@+id/myText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<EditText
android:id="@+id/CPt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<EditText
android:id="@+id/CPp"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<Button
android:id="@+id/makeCP"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
3.在新Activity文件对应的xml文件(result.xml)中绘制调用的界面,加id,制定尺寸。在R.java中查看是否加id成功。
只加了一个文本框,用于显示结果
<TextView
android:id="@+id/cpResult"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
4.在主界面的java文件(CPTest1.java)中,将main.xml中的所有组件,声明为类的private 成员,同时各种import。
在onCreate中,根据控件的ID来取得代表控件的对象
5.在String.xml中写静态文本和按钮对应的值,在CPTest1.java的onCreate中引用这些键值对,来为静态文本和按钮设定显示的值。
6.在CPTest1.java中建立一个监听器类MakeCPListener,复写onClick方法,在其中去的两个EditText控件的值,建立一个Intent类对象,将控件的值放到其中,使用这个Intent对象来启动CPResult。并且要在onCreate中,将监听器的对象绑定到按钮对象上面。
7.现在开始编写CPResult.java,让CPResult继承Activity,复写onCreate方法。将result.xml中的所有组件,声明为类的private成员,各种import。设置召唤出来的界面为result。得到Intent对象中的值,(经过一些处理或运算)显示结果。
8.在string.xml中给result.xml的label写对应的显示的值。在CPText_1 Manifest中声明CPResult这个Activity
<activity android:name=".CPResult" android:label="@string/resultLabel"/>
9.运行看,结果如下: