我想在值为0时设置特定的颜色。我已经尝试过此代码,但是仍然失败。
if(etKids == 0){
yvalues.add(new PieEntry(Float.parseFloat(String.valueOf(nilai.getSkala())), nilai.getNama()));
int newcolor = Color.GRAY;
dataSet.addColor(newcolor);
}else{
yvalues.add(new PieEntry(Float.parseFloat(etKids+"f"), nilai.getNama()));
}
if (test1.size() == test2.size()) {
pieChart.getDescription().setText("Nilai sudah di konversi sesuai bobot !");
pieChart.setExtraOffsets(5, 10, 5, 5);
pieChart.setDragDecelerationFrictionCoef(0.9f);
pieChart.setTransparentCircleRadius(61f);
pieChart.setHoleColor(Color.WHITE);
pieChart.animateY(1000, Easing.EasingOption.EaseInOutCubic);
if(yvalues.contains(0))
dataSet.setSliceSpace(3f);
dataSet.setSelectionShift(5f);
dataSet.setColors(ColorTemplate.COLORFUL_COLORS);
PieData pieData = new PieData((dataSet));
pieData.setValueTextSize(10f);
pieData.setValueTextColor(Color.YELLOW);
pieLegend.setPosition(Legend.LegendPosition.BELOW_CHART_CENTER);
pieLegend.setWordWrapEnabled(true);
pieChart.setCenterText("B+" );
pieChart.setCenterTextSize(34f);
pieChart.setCenterTextColor(Color.BLUE);
pieChart.setData(pieData);
progressBar_nilai.setVisibility(View.GONE);
mAdapter.notifyDataSetChanged();
}
我想将if(etKids == 0){ }
中的数据设置为灰色。我还使用firebase,因此此代码if (test1.size() == test2.size()) {}
使用as标志来了解异步或等待数据完全加载,之后饼图只是显示。真的谢谢
答案 0 :(得分:0)
使用以下代码段代替dataSet.setColors(ColorTemplate.COLORFUL_COLORS);
if(etKids == 0)
{
dataSet.setColors(Color.BLACK);
}