这里有许多问题来自与我有完全相同问题的人,我看了一百万,现在尝试了不同的东西2-3个小时,我仍然无法让它工作。
儿童活动:
Intent resultIntent = new Intent(myColorPicker.this, WidgetConfig.class);
resultIntent.putExtra("key", appwidget_notecolor);
setResult(RESULT_OK, resultIntent);
finish();
家长活动:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// Toast does not show
Toast.makeText(getApplicationContext(), "onActivityResult fired", Toast.LENGTH_SHORT).show();
if (resultCode == RESULT_OK ) {
// Toast does not show
Toast.makeText(getApplicationContext(), "Result Recieved", Toast.LENGTH_SHORT).show();
}
}
我从父活动中启动子活动,如下所示:
Intent myColorPickerIntent = new Intent(WidgetConfig.this, myColorPicker.class);
myColorPickerIntent.putExtra("appwidget_notecolor", appwidget_notecolor);
WidgetConfig.this.startActivity(myColorPickerIntent);
答案 0 :(得分:12)
当然你不会得到结果,你正在调用startActivity()而不是startActivityForResult()。
答案 1 :(得分:5)
在创建Intent之后,您似乎没有调用startActivityForResult()。
答案 2 :(得分:3)
您是否将意图传递给startActivityForResult()方法?