XAxis 上 MPAndroidChart ValueFormatter 的奇怪行为

Strange behavior with MPAndroidChart ValueFormatter on XAxis

我有以下代码:

xAxis.setValueFormatter(new IAxisValueFormatter() {
@Override
    public String getFormattedValue(float value, AxisBase axis) {
        int intValue = (int) value;
        int xVal = intValue / 120 / 12;

        if (xVal > prevXVal) {
            prevXVal = xVal;
            return ConvertUnits.toString(xVal);
        } else {
            return "";
        }
    }
});

由于某些未知原因,X 轴上未显示任何值。我将 prevXVal 初始化为 0,如果删除 if 语句,我可以看到 X 轴上的值是正确的。我基本上想从 X 轴上删除重复的值,并且只在 xVal 更改时显示这些值。我不确定为什么这段代码不起作用,因为我没有看到 if 语句总是错误的,考虑到当我删除它时我看到值发生变化。

有谁知道我做错了什么吗?

好的,我明白了。这似乎可以解决问题:

xAxis.setValueFormatter(new IAxisValueFormatter() {
    @Override
    public String getFormattedValue(float value, AxisBase axis) {
        int intValue = (int) value;
        String xVal = ConvertUnits.toString(intValue / 120 / 12);

        if (!xVal.equals(prevXVal)) {
            prevXVal = xVal;
            if (xVal.equals("0")) {
                return "";
            } else {
                return xVal;
            }
        } else {
            return "";
        }
    }
});