在Activity中直接new Intent()报错:NullPointerException

来源:互联网 发布:telent 端口 编辑:程序博客网 时间:2024/06/05 15:37
public class MainActivity extends AppCompatActivity {    public static final String TAG = "MainActivity";    private Intent mIntent;    //下面注释掉的代码会报nullPoiterException,因为MainActivity对象被创建时,就会调用new Intent(this,SecondActivity.class)    //而new Intent()中,需要用到该MainActivity对象所attach的ContextImpl对象,该MainActivity对象所attach的ContextImpl对象是在    //MainActivity对象被创建后才会被MainActivity对象所attach()【在ActivityThread.java中的performLaunchActivity()中被attach】    //解决方法:1.在onCreate()中调用mIntent  = new Intent(this,SecondActivity.class);因为onCreate()方法在attach()后面才会被调用。    *//private Intent mIntent= new Intent(this,SecondActivity.class);*    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mIntent  = new Intent(this,SecondActivity.class);    }}
阅读全文
0 0
原创粉丝点击