Fragment中使用Toast报错

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ygd1994/article/details/51787864

在Fragment中使用Toast时会报错,主要原因是获取不到上下文。
测试了一下,即使是放在onAttach()里面Context也还是null,所以只能在onCreate()里面初始化。

  • 代码:
Toast.makeText(getActivity(), "测试", Toast.LENGTH_SHORT).show();
  • 错误:
NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
  • 解决办法:
  private Context mContext;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.mContext = getActivity();
    }
    .
    .
    .
    Toast.makeText(mContext, "网络连接异常", Toast.LENGTH_SHORT).show();

猜你喜欢

转载自blog.csdn.net/ygd1994/article/details/51787864