简体   繁体   English

Android Studio中的空对象引用错误

[英]Null object reference error in Android Studio

im getting this error,it seems appears when i use findviewbyid from another class. 即时通讯收到此错误,似乎当我使用另一个类中的findviewbyid时出现。

MainActivity:

protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Button boton=(Button)findViewById(R.id.button);
    boton.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
          EditText usuario=(EditText)findViewById(R.id.editText);
            usuario1  =(EditText)findViewById(R.id.editText);
            EditText password = (EditText) findViewById(R.id.editText2);
            String user = usuario1.getText().toString();
            String pass = password.getText().toString();
            Esta asd=new Esta();
        asd.function();

        }
        });}

Esta.class: Esta.class:

package com.example.sori.facultad_if;

import android.support.v7.app.AppCompatActivity;
import android.widget.EditText;


public class Esta extends AppCompatActivity{

    public void function() {
        setContentView(R.layout.activity_main);
        EditText thisone=(EditText)findViewById(R.id.editText);

}}

Errors Log: 错误日志:

03-05 22:44:12.061 10088-10088/com.example.sori.facultad_if E/AndroidRuntime﹕ FATAL EXCEPTION: main Process: com.example.sori.facultad_if, PID: 10088 java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.Window$Callback android.view.Window.getCallback()' on a null object reference 03年5月5日22:44:12.061 10088-10088 / com.example.sori.facultad_if E / AndroidRuntime致命异常:主进程:com.example.sori.facultad_if,PID:10088 java.lang.NullPointerException:尝试调用虚拟空对象引用上的方法'android.view.Window $ Callback android.view.Window.getCallback()'

Thanks in advance 提前致谢

Try it like this : 像这样尝试:

MainActivity: 主要活动:

protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    EditText usuario=(EditText)findViewById(R.id.editText);
    EditText password = (EditText) findViewById(R.id.editText2);

    Button boton=(Button)findViewById(R.id.button);
    boton.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {


                String user = usuario1.getText().toString();
                String pass = password.getText().toString();
                startActivity(new Intent(activity, ImageEditingActivity.class).putExtra("user", user).putExtra("pass", pass));

            }
        });

}

Esta.class: Esta.class:

package com.example.sori.facultad_if;

import android.support.v7.app.AppCompatActivity;
import android.widget.EditText;


public class Esta extends AppCompatActivity{

    protected void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        try {
            //noinspection ConstantConditions
            String user = getIntent().getExtras().getString("user", "");
            String pass = getIntent().getExtras().getString("pass", "");
        } catch (Exception e) {
            e.printStackTrace();
        }

        EditText thisone=(EditText)findViewById(R.id.editText);
    }


}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM