Android GraphView - легенда: линии вместо квадрата

Я видел это и хочу, чтобы в моей легенде были те же строки, что и на показанном изображении.

Демо

Я не могу найти это в GraphView.getLegendRenderer() Object.

Исходное сообщение


person Luis Garcia    schedule 09.12.2016    source источник


Ответы (1)


для этого у вас есть собственный рендерер легенды.

Создайте новый класс, расширяющий класс LegendRenderer. Там вы можете переопределить метод draw. Около строки 192 находится часть, где отображается прямоугольник. Просто измените исходный код, чтобы вместо прямоугольника была строка.

https://github.com/jjoe64/GraphView/blob/master/src/main/java/com/jjoe64/graphview/LegendRenderer.java#L192

Если вы хотите, вы можете создать запрос на вытягивание или просто скопировать свой пользовательский рендерер в задачу на github, тогда я, возможно, смогу объединить его с основным для следующего выпуска.

Веселиться!

person appsthatmatter    schedule 20.12.2016
comment
Я пытался переопределить метод, но не смог с ним справиться. Мой перезаписанный метод никогда не вызывается... Моя идея состояла в том, чтобы вдвое уменьшить размер legendHight. - person Luis Garcia; 22.12.2016
comment
вы вызвали graph.setLegendRenderer(yourCustomRenderer)? - person appsthatmatter; 23.12.2016
comment
Хм, о нет.. Я назвал «CustomLegend cl = new CustomLegend(); cl.getLegendRenderer()...' - person Luis Garcia; 28.12.2016