为什么我会收到此错误 - RunTimeException:无法实例化活动?

Eri*_*len 2 android

我的LogCat说:

java.lang.RunTimeException: Unable to instantiate activity ComponentInfo{com.erikbalen.idealgaslawcalculator/com.erikbalen.idealgaslawcalculator.NumberActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity{ActivityThread.java:2121}
Run Code Online (Sandbox Code Playgroud)

这是我的java文件:

public class NumberActivity extends Activity {

EditText pressure = (EditText) findViewById(R.id.editTextPressure);
EditText temperature = (EditText) findViewById(R.id.editTextTemperature);
EditText volume = (EditText) findViewById(R.id.editTextVolume);
TextView answer = (TextView) findViewById(R.id.textViewSolve);
Button solve = (Button) findViewById(R.id.buttonSolve);

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_number);
    solve.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {

            double pressureValue = Double.parseDouble(pressure.getText().toString());
            double temperatureValue = Double.parseDouble(temperature.getText().toString());
            double volumeValue = Double.parseDouble(volume.getText().toString());
            double r = 0.0821;
            double answerValue = (pressureValue*volumeValue)/(r*temperatureValue);
            answer.setText(Double.toString(answerValue));
        }
    });
}

}
Run Code Online (Sandbox Code Playgroud)

希望这就是你所需要的一切.如果您需要其他代码,请与我们联系.

A--*_*--C 7

移动findViewById()电话

EditText pressure = (EditText) findViewById(R.id.editTextPressure);
EditText temperature = (EditText) findViewById(R.id.editTextTemperature);
EditText volume = (EditText) findViewById(R.id.editTextVolume);
TextView answer = (TextView) findViewById(R.id.textViewSolve);
Button solve = (Button) findViewById(R.id.buttonSolve);
Run Code Online (Sandbox Code Playgroud)

所以他们追求 setContentView(R.layout.activity_number);

findViewById()null如果View在布局中找不到,将返回.如果没有布局,则无法View找到.Activity首次实例化时,肯定没有布局设置.