【发布时间】:2021-06-09 14:08:24
【问题描述】:
原因:java.lang.NullPointerException:尝试在 com.example 的空对象引用上调用虚拟方法 'android.view.View android.widget.EditText.findViewById(int)'。 temperaturecricket.MainActivity.onCreate(MainActivity.java:25)。
这是突出我的错误的地方。
'''
**`etChirps.findViewById(R.id.etChirps);`**
'''
这是我的全部代码
`package com.example.temperaturecricket;
导入androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import java.text.DecimalFormat;
public class MainActivity extends AppCompatActivity {
EditText etChirps;
Button btnCalculate;
TextView tvResults;
DecimalFormat formatter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etChirps = findViewById(R.id.etChirps);
btnCalculate.findViewById(R.id.btnCalculate);
tvResults.findViewById(R.id.tvResults);
tvResults.setVisibility(View.GONE);
formatter=new DecimalFormat("#0.0");
btnCalculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
if(etChirps.getText().toString().isEmpty())
{
Toast.makeText(MainActivity.this,"Please Enter All fields ",Toast.LENGTH_SHORT).show();
}
else
{
int chirps=Integer.parseInt(etChirps.getText().toString().trim());
double temp=(chirps/3.0)+4;
String result="The Approx Temperature outside is : "+formatter.format(temp)+" Degree Celsius";
tvResults.setText(result);
tvResults.setVisibility(View.VISIBLE);
}
}
});
}
}'
【问题讨论】:
-
贴出相关部分代码,例如
etChirps.findViewById(R.id.etChirps)所在的方法
标签: java android android-studio nullpointerexception