我有DataActivity
,必须要求用户填写表单,然后将数据返回MainActivity
DataActivity
从MainActivity
调用,如下所示:
Intent i = new Intent();
i.setClass(this, DataActivity.class);
startActivityForResult(i,RESULT_OK);
DataActivity
应将数据意图返回MainActivity
,如下所示:
Intent i = new Intent();
i.putExtra("funcX", ((EditText)findViewById(R.id.data_eq_x)).getText().toString());
i.putExtra("funcY", ((EditText)findViewById(R.id.data_eq_y)).getText().toString());
i.putExtra("constants", (Serializable)constants);
setResult(RESULT_OK,i);
finish();
但在onActivityResult
之后永远不会调用MainActivity
...
每当我尝试访问funcX
中的funcY
或MainActivity
时,我都会获得NullPointerexception。
注意:当我测试此代码时,constants
变量实际上可能为null。
我正在模拟器上开发Android 2.2。
答案 0 :(得分:2)
requestCode如果> = 0,将在onActivityResult()中返回此代码 当活动退出时。
RESULT_OK等于-1 ..
将您的请求代码更改为某个正值以使其生效
Intent i = new Intent(this, DataActivity.class);
startActivityForResult(i,345);