方法调用在两者之间终止并跳转到下一个方法调用

时间:2012-08-22 17:34:26

标签: android methods execution sequential

我正在尝试在android中构建一个记事本应用程序。我遇到这种情况,当用户选择在处理文件的同时创建新文件时,应用程序应首先请求保存,然后重新启动MainActivity以创建新文件。

所以,基本上,顺序如下:

- >处理当前文件
- >点击新文件
- >保存对话框
- >重新启动MainActivity。

为此,我一直在使用一个名为new file的方法,如下所示:

public void new_file()
    {
        save_file();
        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }

这里的问题是,每次我运行应用程序并发送这部分代码时,对话框会弹出并立即显示一个新文件。

我想知道如何让Activity完成save_file()方法调用,然后调用Activity Restarts。

先谢谢

2 个答案:

答案 0 :(得分:0)

看起来它工作正常,但没有看到safe_file()代码(BTW:考虑切换到更标准的函数命名约定)很难确定,但是注意对话框异步,所以你无法启动对话框并期望所有其他代码等待对话框解除。我假设您在safe_file()方法中弹出对话框,因此您应该在完成保存时回调以从那里开始新活动,或者您应该在对话框单击侦听器中执行此操作。

答案 1 :(得分:0)

使用AlertDialog机制的NegativePositiveNeutral按钮检测用户何时退出对话框。然后,使用OnClickListener来确定单击了哪个按钮,然后仅重新启动Activity。类似的东西:

  1. 显示对话框
  2. 等待其中一个按钮被点击
  3. 单击按钮时重新启动活动,因为这意味着用户正在退出对话框。