2011-11-01 94 views
1

如何确保Activity窗口在Android应用程序中仅被初始化一次。我被问了一次这个问题,我不确定答案是什么。 但是好像我们可以在onCreate()方法中做到这一点。活动初始化

public class YourActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     if (savedInstanceState == null) { 
      // Initialized here once 
     } 
    } 
} 

这是正确的做法还是有其他方法可以实现这一目标?

+0

这是有点不清楚你想要做什么。您发布的代码段将会工作,只会在首次初始化Activity时调用“if”语句中的代码,而不会随后调用onCreate()(例如由于配置更改,如设备回转)。如果这不是你所需要的,请进一步澄清。干杯。 – Devunwired

+1

我想在这个'if'块中初始化一些成员变量,并且要确保这些应该只被调用一次。除了第一次以外,是否还有其他的这个'if'块会被执行。 我猜想类似的工作可以使用android:launchMode标志完成。 – Rakesh

+0

欢迎来到Stackoverflow!如果您发现回复有帮助,请投票。如果回复成功回答您的问题,请点击旁边的绿色复选标记以接受答案。另请看看http://stackoverflow.com/questions/how-to-ask关于如何写出一个好问题的建议 –

回答