MPAndroidChart - 更改消息“没有可用的图表数据”
Posted
技术标签:
【中文标题】MPAndroidChart - 更改消息“没有可用的图表数据”【英文标题】:MPAndroidChart - Change message "No chart data available" 【发布时间】:2015-09-02 17:30:10 【问题描述】:有没有办法在图表未填充时更改消息“没有可用的图表数据”?
编辑:找到答案
chart.setNoDataText("Description that you want");
【问题讨论】:
作者找到了问题的答案。 为什么不把它粘贴为答案? 【参考方案1】:如果setNoDataText
不起作用,您必须在初始化图表时设置它(然后运行invalidate()
)。马上设置数据时不要这样做。
【讨论】:
这并没有提供问题的答案。一旦你有足够的reputation,你就可以comment on any post;相反,provide answers that don't require clarification from the asker。 - From Review【参考方案2】:这是一个有点旧的线程,但我遇到了同样的问题,所以我的解决方案是在图表初始化后立即设置 nodatatext:
PieChart pieChart = findViewById(R.id.chart) //in case of fragment view.findViewById(R.id.chart)
pieChart.setNoDataText("Loading");
【讨论】:
【参考方案3】:你需要把pieChart.invalidate()
放在setNoDataText()
之后:
@Override
public void setDataMessagePieChart()
pieChart.setNoDataText("... your message ...");
pieChart.invalidate();
【讨论】:
【参考方案4】:更新答案
chart.setNoDataText("Description that you want");
【讨论】:
这是我的参考github.com/PhilJay/MPandroidChart/issues/2039 我看到上面的线程,设置mChart.setNoDataText("");
和mChart.setNoDataTextColor(R.color.white);
都没有效果。
尝试调用chart.invalidate();设置文本后让我知道这是否有帮助
这不起作用 - 似乎这只是在之前已经设置过一次数据之后才起作用【参考方案5】:
正确答案在这里:
pie_chart.setNoDataText("No Data Available");
val paint:Paint = pie_chart.getPaint(Chart.PAINT_INFO)
paint.textSize = 40f
pie_chart.invalidate()
您还可以设置其他属性,例如文本颜色、文本字体等
【讨论】:
【参考方案6】:@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_firestore__eintraege__heute);
mChart = findViewById(R.id.chartZuckerHeute);
mChart.setNoDataText("PUT IT HERE ON TOP; WORKED FOR ME");
【讨论】:
【参考方案7】:如果您还想自定义外观,可以通过Paint
对象来实现:
mChart.setNoDataText("Description that you want");
Paint p = mChart.getPaint(Chart.PAINT_INFO);
p.setTextSize(...);
p.setColor(...);
p.setTypeface(...);
...
【讨论】:
以上是关于MPAndroidChart - 更改消息“没有可用的图表数据”的主要内容,如果未能解决你的问题,请参考以下文章
MPAndroidchart 圆形边缘用于彩色 HorizontalBarChart