我有一个DialogActivity从 a 调用的Fragment用于显示Dialog带有两个图像按钮的自定义。
在DialogActivity.onCreate
final Dialog dialog = new Dialog(this, R.style.DialogTheme);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.dialog_pause);
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
dialog.show();
在DialogActivity.onClick
@Override
public void onClick(View v) {
Log.d(LOGTAG, "onClick CONTINUE");
Intent resultData = new Intent();
resultData.putExtra("TEST", "return data");
setResult(666, resultData);
dialog.cancel();
}
在调用的片段中startActivityForResult:
Intent dialogActivityIntent = new Intent(getActivity(), DialogActivity.class);
startActivityForResult(dialogActivityIntent, 999);
Activity并Fragment调用startActivityForResult:_
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}
当我单击按钮时,我只会取消对话框并显示后台活动(片段)。
没有任何对onActivityResult, onResume, ... 的调用Fragment或Activity包含Fragment.
我尝试过的事情:
要onActivityResult在两者中实现,Fragment并且Activity包含我的Fragment.
要知道的事情:
noHistory=true我在每个Activity我拥有的属性中设置了属性。
如果我finish()在onClick那个Activity/Fragment调用DialogActivity也关闭了,并且应用程序返回到之前的Activity.
这可能是问题所在,我不打电话finish()......但如果我打电话finish(),它会退出到另一个Activity,而不是Activity那个调用startActivityForResult。
我检查的链接:
startActivityForResult() 不调用 onActivityResult(int requestCode, int resultCode, Intent data)?
无法触发 onActivityResult() android?
startActivityForResult 似乎没有调用 onActivityResult
Activity 从 Fragment 启动时未调用 onActivityResult()
我希望一切都清楚地解释了^^。
提前致谢。