mpandroidchart错误,如有帮助,将不胜感激

uinbv5nw  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(266)

这个问题在这里已经有答案了

什么是nullpointerexception,如何修复它(12个答案)
上个月关门了。
我以前从未用过mpandroidchart。我只是在为我正在做的一个项目做测试。什么可能导致空对象引用错误?以下代码如下。

  1. java.lang.NullPointerException: Attempt to invoke virtual method 'void com.github.mikephil.charting.charts.LineChart.setScaleEnabled(boolean)' on a null object reference
  2. at com.example.fishfindergraphicsnobtinputdata.MainActivity.onCreate(MainActivity.java:35)
  3. public class MainActivity extends AppCompatActivity {
  4. MyCanvas myCanvas;
  5. String TAG;
  6. Context context;
  7. private LineChart lineChart;
  8. @Override
  9. protected void onCreate(Bundle savedInstanceState) {
  10. super.onCreate(savedInstanceState);
  11. myCanvas = new MyCanvas(this);
  12. myCanvas.setBackgroundColor(Color.GRAY);
  13. setContentView(myCanvas);
  14. context = getApplicationContext();
  15. Utils.init(context);
  16. lineChart = findViewById(R.id.linechart);
  17. lineChart.setScaleEnabled(false);
  18. lineChart.setDragEnabled(true);
  19. ArrayList<Entry> dataset1 = new ArrayList<>();
  20. dataset1.add(new Entry(10, 10f));
  21. dataset1.add(new Entry(30, 30f));
  22. dataset1.add(new Entry(50, 50f));
  23. LineDataSet lineDataSet = new LineDataSet(dataset1, "linechart");
  24. ArrayList<ILineDataSet> dataSets = new ArrayList<>();
  25. dataSets.add(lineDataSet);
  26. LineData data = new LineData(dataSets);
  27. lineChart.setData(data);
  28. }
  29. }
hmtdttj4

hmtdttj41#

private LineChart lineChart 从未初始化过,这是导致错误的原因。你必须使用 lineChart = (LineChart) findViewById(R.id.my_linechart); 从你的房间里拿 xml 在使用任何函数或向其中添加数据之前对其进行初始化。
希望这能奏效!

相关问题