从Dialog Activity返回MainActivity

时间:2013-07-10 17:07:51

标签: android android-intent android-activity dialog activity-finish

我有这个问题我将一个Activity作为一个带有属性android:theme="@android:style/Theme.Dialog"的对话启动到目前为止很好,当我运行这个Activity我希望用户填写一些EditText然后按一个按钮后台进程将开始,现在我使用this.setFinishOnTouchOutside(false);来阻止用户点击外部并finish()被调用,我的问题是我不知道如何finish()具体这个DialogLikeActivity ,当我在后台进程启动后调用finish()时,应用程序关闭,我想返回MainActivity或启动DialogLikeActivity的Activity(MainActivity在startActivity或{{1之后仍然可见为DialogLikeActivity调用,这是我得到的:

MainActivity代码:

startActivityForResult()

和DialogLikeActivity中的按钮代码:

Intent intent = new Intent(this, DialogLikeActivity.class);
        startActivityForResult(intent,0);

我想也许我的问题是MainActivity不是DialogLikeActivity的父级,在这种情况下它应该是?如何制作MainActivity的DialogLikeActivity子元素,如果我实现了,那么DialogLikeActivity中对public void saveClient(View view){ Intent returnIntent = new Intent(); setResult(RESULT_OK, returnIntent); finish(); } 的调用是否完成了Activity本身而不是app?

提前致谢,对不起我的英语。

编辑:

这是在MainActivity上方显示为对话框的活动

1 个答案:

答案 0 :(得分:0)

听起来DialogFragment可能更适合您的需求。它具有类似于Activity的生命周期方法,可以在其自身内运行后台任务,但实际上由附加到它的活动管理。您可以使用几种类型。

查看其中的Google文档HERE