当前位置: 代码迷 >> Android >> onCreate跟构造函数
  详细解决方案

onCreate跟构造函数

热度:10   发布时间:2016-05-01 12:18:38.0
onCreate和构造函数
在一个继续Activity的类中,不能同时让onCreate和构造函数同时出现吗??

如果不能,原因为何?

如果能,为什么会出现错误?

12-19 02:33:10.343: E/AndroidRuntime(10398): FATAL EXCEPTION: main
12-19 02:33:10.343: E/AndroidRuntime(10398): java.lang.IllegalStateException: System services not available to Activities before onCreate()
12-19 02:33:10.343: E/AndroidRuntime(10398):  at android.app.Activity.getSystemService(Activity.java:3989)

应该怎样解决?
------解决方案--------------------
1.构造函数是java里的,oncreate是android里的回调函数,两者没有直接联系。

2.你把你调用这两个函数的代码贴出来,帮你看看。
------解决方案--------------------
我试了一下可以写构造函数的,我的构造函数里什么事情也没做,错误提示是:可能是你在构造函数做的事情要等到oncreate方法之后吧
------解决方案--------------------
java.lang.IllegalStateException: System services not available to Activities before onCreate()

这个错误说的还不够详细吗
意思是在构造函数(就是onCreate之前)里调用了一些Activity的方法,但是由于onCreate还没有执行过,所以System services 是无效的,而调用System services 是在Activity.java里android.app.Activity.getSystemService

------解决方案--------------------
构造函数和onCreate当然没有任何联系,它们只是程序执行过程中的先后次序而已,而你在开始的过程中使用了后来过程的数据,能不出错吗