Fragment 大概是這樣的:[color=#0000FF][/color]
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
View v = inflater.inflate(R.layout.ac_frament3, container, false);
initView();
return v;
}
private void initView() {
pieChart = (PieChart) getActivity().findViewById(R.id.pie_chat1);
showhodlePieChart();
}
private void showhodlePieChart() {
省略...
PieChartManagger pieChartManagger=new PieChartManagger(pieChart);
pieChartManagger.showSolidPieChart(yvals,colors);
}
pieChartManagger類大概是這樣:
public class PieChartManagger {
public PieChart pieChart;
public PieChartManagger(PieChart pieChart) {
this.pieChart = pieChart;
initPieChart();
}
//初始化
private void initPieChart() {
pieChart.setDrawHoleEnabled(false); 出錯的位置
省略。。。
------------------------------------------
錯誤代碼:
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.github.mikephil.charting.charts.PieChart.setDrawHoleEnabled(boolean)' on a null object reference
uj5u.com熱心網友回復:
然后我換了幾次的嘗試,發現就是設定的時候出錯的例如:
barChart.setDescription(null);
barChart.setDrawBarShadow(false);
barChart.setDrawBarShadow(true);
這些
都是 on a null object reference 錯誤
不知道怎么回事
uj5u.com熱心網友回復:
因為你的pieChart物件為空了所以在設定這個屬性的時候就會拋出例外,你看一下這行PieChartManagger pieChartManagger=new PieChartManagger(pieChart);代碼的時候你的pieChart物件是賦值成功了的嗎,你直接將pieChart當作方法引數傳遞會不會更方便呢轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/192820.html
標籤:Java SE
上一篇:java基本語法.5基本運算子
