MPAndroidChart setValueFormatter требует ValueFormater, а не IAxisValueFormatter

#java #android-studio #mpandroidchart

#java #android-studio #mpandroidchart

Вопрос:

итак, в основном недавно я начал программировать мобильные приложения и обнаружил проблему в своем приложении. Я хочу, чтобы значения xAxis моей линейной диаграммы были в формате 19:30, а не в формате 3244 минут, поэтому я погуглил AxisFormatters. Проблема в том, что во всех руководствах они создают класс, подобный этому:

 private class MyAxisFormatter implements IAxisValueFormatter {

    @Override
    public String getFormattedValue(float value, AxisBase axis) {
        return value as an hour;
    }
}
  

а затем поместите его в функцию:

     XAxis valAxis = mChart.getXAxis();
    valAxis.setValueFormatter(new MyAxisFormatter());
  

Но всякий раз, когда я добавляю это в это, я получаю красное подчеркивание: требуемый тип:
ValueFormatter
Предоставлено:
MyAxisFormatter

Я попытался каким-то образом преобразовать его в ValueFormatter, но это не сработало, решение, которое подсказывает мне программа, состоит в том, чтобы заставить MyAxisFormater расширить ValueFormatter, хотя я не получаю никаких ошибок, тогда это не меняет никакого значения на моей оси

Ответ №1:

Хорошо, я понял, вместо того, чтобы использовать

 private class MyAxisFormatter implements IAxisValueFormatter {
 @Override
 public String getFormattedValue(float value, AxisBase axis) {
     return value as an hour;
 }
}
  

Я использовал

 private class MyAxisFormatter extends ValueFormatter {
    @Override
    public String getFormattedValue(float value) {
        return "someValue";
    }
}
  

И все работает нормально