我的Android应用程式出现问题。我不知道为什么按下操作栏上的“向上导航”按钮时未调用“onActivityResult”方法。我认为我已正确完成了所有操作:
Intent intent = new Intent(ParentActivity.this, ChildActivity.class);
startActivityForResult(intent, 1000);
public void finish()
{
Intent result = new Intent((String)null);
result.putExtra(Constantes.INTENT_EXTRA_HAY_QUE_RECALCULAR, hayQueRecalcular);
setResult(RESULT_OK, result);
super.finish();
}
我不确定为什么不调用'onActivityResult'方法。
我观察到的是,当按下操作栏上的“向上导航”按钮时,子 Activity 尚未完成(未调用“完成”方法)。但是,当按下后退按钮(硬件按钮)时会调用它。
我做错了什么?
谢谢
最佳答案
由于您的 child Activity 仅位于父 Activity 的顶部,因此不需要此方法
NavUtils.navigateUpFromSameTask(this);
写像
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == android.R.id.home) {
Intent result = new Intent((String) null);
result.putExtra(MyConstants.INTENT_EXTRA_RESULT, true);
setResult(RESULT_OK, result);
finish();
return true;
} else {
return super.onOptionsItemSelected(item);
}
}
当按下主页按钮时,完成您的“ child Activity ”。