今天开始学习在两个 Activity 中传递参数。其中用到了 Bundle 和 Intent ,初步了解了其用法。
在这个过程中有两点需要注意:
1. 新建了一个 Activity 时,需要在 AndroidManifest.xml 中声明,例如:
<activity android:name=".ResultActivity" />
不然会报异常:
03-11 12:41:16.283: ERROR/AndroidRuntime(1240): android.content.ActivityNotFoundException: Unable to find explicit activity class {ohuan.test/ohuan.test.ResultActivity}; have you declared this activity in your AndroidManifest.xml?
意思就是不能找到 显性的 activity , 问你有没有在 AndroidManifest.xml 中声明?
2. TextView 有一个方法 setText( arg0 ) . 这个方法当你传入一个参数为 int 时,它不会报错。但在运行进可能会出现错误:
03-11 12:44:16.283: ERROR/AndroidRuntime(1339): java.lang.RuntimeException: Unable to start activity ComponentInfo{ohuan.test/ohuan.test.ResultActivity}: android.content.res.Resources$NotFoundException: String resource ID #0x10这是由于 Android 会认为你传入的 int 型的数值是某个 resource 的 id ,那运行时就会出错。
这在 Android 里是经常会出现的 传参数情况。需注意!
因此,若要显示一个 int 整型值,可以这样写:
result.setText(r+"");
加一个空的字符串,这样就可以了。