java - 等待进程完成后再执行一行代码

标签 java android

strReturnedAddress 大约需要计算需要 3 秒 - 但也可能快至半秒。该行触发计算

new GetCurrentCity().execute();

在那一行之后是这一行

    if(!(strReturnedAddress == null)){
        test.setText(strReturnedAddress);

我希望 if 语句在计算 strReturnedAddress 时执行。

我怎样才能做到这一点?

最佳答案

如果需要doInBackGround()之后的执行结果,可以将代码放在onPostExecute()中。 onPostExecute 将在主线程上运行,并将 doInBackGround() 的返回值传递到参数中。

另一种方法是使用task.execute().get()等待结果。但这违背了 Asyntask 的目的.

关于java - 等待进程完成后再执行一行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17576115/

相关文章:

java - 将文本拆分为句子并将句子拆分为单词 : BreakIterator vs regular expressions

java - 维护内部 Maven 存储库的技巧?

java - 在Java中检查字符串值是否为空的最佳方法

android - 百分比支持库 : Set percentage values in xml?

android - 用于在 Android 中接听电话的 slider 按钮

java - 使用链表和数组构建邻接表图的性能差异巨大

java - 修改java文件夹中的xml文件

android - 在 ubuntu 中找不到 gradlew.bat

android - 从 ChipGroup 中获取选定的 Chip

Android Google api v2导航路线图不使用解析