我想在通过 tabhost 启动的活动中获取相机结果。
代码启动活动:
intent = new Intent().setClass(this, ListActivity.class);
spec = tabHost.newTabSpec("list").setIndicator(getString(R.string.tab_label_list),
res.getDrawable(R.drawable.list_tab))
.setContent(intent);
tabHost.addTab(spec);
ListActivity(扩展 BaseActivity):
takeScreenshotButton.setText(getString(R.string.upload_screenshot_button_label));
takeScreenshotButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
i.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File("/sdcard/tmp")));
i.putExtra("CAMERA_PIC_REQUEST", CAMERA_PIC_REQUEST);
i.putExtra("test", 2);
OpenMatchActivity.this.getParent().getIntent().putExtra("test", 1);
OpenMatchActivity.this.getParent().startActivityForResult(i, CAMERA_PIC_REQUEST);
}
});
我试图通过 putExtra 发送额外的信息。
但是在 ListActivity 中不包含额外的信息:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Bundle extras = data.getExtras();
String cam = extras.getString("CAMERA_PIC_REQUEST");
String test = extras.getString("test");
...
}
我该怎么做才能在 tabhost 活动中获取 tab host 活动的值?