Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';我不明白我在做什么_Java_Android - Fatal编程技术网

Java Can';我不明白我在做什么

Java Can';我不明白我在做什么,java,android,Java,Android,我一直在学习 在其中一个活动(HomeActivity.java)中,他们的工作如下: void onCreate(Bundle savedInstance) { if(someCondition) { // start some other activity here finish(); // finish this activity } if(isFinishing()) return; // More code here } 我想知道为

我一直在学习
在其中一个活动(HomeActivity.java)中,他们的工作如下:

void onCreate(Bundle savedInstance)
{
   if(someCondition) {
      // start some other activity here
      finish(); // finish this activity
   }

   if(isFinishing()) return;

   // More code here
}

我想知道为什么他们不把
return
放在
finish()
之后,而是检查
isFinishing()

一项活动可以通过多种方式完成

来自名为startActivityForResult的活动

finishafinity
finishFromChild


所以,
isfinishing
被用来解释这种情况。

那就是。。。一个很好的问题。我的猜测是,他们之所以把它放在那里,要么是因为可能有多个
finish()
调用,要么是因为其他东西可能会在这个活动开始之前完成它。