昨天在网上找了小半天都没找到好用的方法,今天决定看源码了,没注释看的很头疼
修改文件:AxesRenderer
方法:drawAxisLabelsAndName
代码位置:
if (axis.hasTiltedLabels()) {
//这里是文字倾斜,很鸡肋,请将它忽略
}else{
//画的第一行
//labelBuffer,文字内容
//labelBuffer.length - charsNumber + 4,指,从labelBuffer中的第几位开始画
//4是指第一行画的文字数量
//labelX,labelY,指文字所在的坐标
//labelPaintTab,画笔
canvas.drawText(labelBuffer, labelBuffer.length - charsNumber, charsNumber<4?charsNumber:4, labelX, labelY,labelPaintTab[position]);
//文字多余四个,再画第二行
if (charsNumber > 4) {
//画的第二行
canvas.drawText(labelBuffer, labelBuffer.length - charsNumber + 4, charsNumber<8?charsNumber-4:4, labelX, labelY + 20,labelPaintTab[position]);
}
}
所以,只需要修改每行文字显示数量,并在适当的时候下移 紧接着文字 再画一行