微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在MPAndroidChart中设置颜色?

我正在使用MPChartlib作为基本的“条形图”(3个条形和0到100之间的值).

应用程序的背景是黑暗的,所以我想将文本设置为白色,但是当我在chart.xml中设置颜色代码为“FFFFFF”的文本时,存储在string.xml中,但文本显示为深蓝色.

//Axe X
   XAxis x = barchart.getXAxis();
   x.setPosition(XAxisPosition.BottOM);
   x.setTextColor(R.color.chart_color);
   x.setAxisLineColor(R.color.chart_color);


   // Design
   barchart.setDragEnabled(false);
   barchart.setDrawGridBackground(false);
   barchart.setTouchEnabled(false);
   barchart.setHighlightEnabled(false);
   barchart.setMaxVisibleValueCount(101);
   barchart.setDescription(null);
   barchart.setGridBackgroundColor(R.color.chart_color);

   barchart.invalidate(); // refresh

   //Axe Y
   barchart.getAxisLeft().setAxisMaxValue(100);
   barchart.getAxisLeft().setDrawTopYLabelEntry(true);
   barchart.getAxisLeft().setDrawAxisLine(false);
   barchart.getAxisLeft().setDrawGridLines(false);
   barchart.getAxisLeft().setAxisLineColor(R.color.chart_color);
   barchart.getAxisLeft().setTextColor(R.color.chart_color);

   barchart.getAxisRight().setAxisMaxValue(100);
   barchart.getAxisRight().setDrawTopYLabelEntry(true);
   barchart.getAxisRight().setAxisLineColor(R.color.chart_color);
   barchart.getAxisRight().setTextColor(R.color.chart_color);

我尝试了很多东西和研究,但找不到问题,lib是不是使用相同类型的颜色代码或什么?

谢谢你的帮助,
亚历克斯

解决方法

您将资源ID传递给库,而不是实际颜色.

使用它来获得颜色:

int color = ContextCompat.getColor(context,R.color.chart_color);

    LineDataSet dataSet = ...;
    dataSet.setColor(color);

您也可以在documentation中找到它.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐