是这样的:
我在做自定义Toast的时候
需要用LayoutInflater来获取我自定义Toast的布局
但是报错了,报错信息如下:java.lang.IllegalStateException: System services not available to Activities before onCreate()
而报错的代码是:
View layout = LayoutInflater.from(this).inflate(R.layout.toast_layout, (ViewGroup)findViewById(R.id.toast), true);
百度过后我也大约知道是要在onCreate()里实例化,但是我是自定义的Toast类,并没有onCreate函数,我该怎么办?求各位大佬解答一下……

解决方案 »

  1.   

    为什么一个人也没有QAQ求大佬解答啊
      

  2.   

    你这是要自定义Toast么?如果是的话不用继承Activity啊,写一个工具类就行了
      

  3.   

    QAQ但是如果不继承Activity的话我实例化Inflater的时候会报错说找不到这个方法,不过现在已经解决了,谢谢大佬
      

  4.   

    QWQ谢谢各位大佬,问题已经解决了,解决方法如下:我干脆直接写了个自己的MyActivity类,然后在里面写上自定义Toast的方法,然后让自己的Activity都继承我自己的MyActivity类,然后我还准备在MyActivity类的onCreate里设置了沉浸式状态栏,这下是一举两得,直接解决了困扰我好久的俩问题
      

  5.   

    感觉是from(this)的问题,应该是传递过来的activity
      

  6.   

    可是from的参数是一个Content类型的参数……
      

  7.   

    可是from的参数是Content类型的,因为我没接触过这种类型,所以不知道怎么获取,但是我随便填了个this还成功了,所以我就这么用了……
      

  8.   

    你这代码完全被玩坏了
    activity是不允许有构造函数的,并且不允许new出来,连犯2个错误。
    new出来的activity没有任何作用,所以在inflater需要context的时候直接跪了。
    自定义toast直接参考源码写个静态工具类就行了