因此,我目前使用的是PhilJay(https://github.com/PhilJay/MPAndroidChart)的MPChart库,但是在x轴上滚动时遇到一些问题,因为当我尝试滚动两次时它会重置...我不怎么描述它确切地讲,所以这是我的问题的视频:

https://youtu.be/h04RItDrE34

如您所见,我无法滚动远处,因为当我尝试进行第二次滚动时,图表会立即从我开始第一次滚动的地方开始,而不是从我结束的地方开始...

这是我的代码,如何修改LineChart(不应scrollY):

LineChart graphView;

public ECGView(LineChart graphView){
    this.graphView = graphView;

    setup(graphView);
}

public LineChart getGraphView(){
    return graphView;
}

public void addFloatArrayToSeries(float[] floats, int color){
    ArrayList<Entry> entries = new ArrayList<>();

    int i = 0;
    for(float val : floats){
        entries.add(new Entry(i, val));
        i++;
    }
    LineDataSet lineDataSet = new LineDataSet(entries, "ECG");
    lineDataSet.setColor(color);

    ArrayList<ILineDataSet> lineDataSetif = new ArrayList<>();
    lineDataSetif.add(lineDataSet);
    LineData lineData = new LineData(lineDataSetif);

    graphView.clear();
    graphView.setData(lineData);

}

public void setup(LineChart graphView){
    graphView.setBackgroundColor(Color.rgb(45,45,45));
    graphView.setScaleYEnabled(false);
}


和Android的xml-layout代码:

<androidx.cardview.widget.CardView
    android:id="@+id/ecg_box"
    android:layout_width="300dp"
    android:layout_height="300dp"
    android:layout_margin="10dp"
    android:shape="ring"
    app:cardCornerRadius="20dp"
    app:cardElevation="20dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintVertical_bias="0.13">

    <com.github.mikephil.charting.charts.LineChart
        android:id="@+id/ecg_viewer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingLeft="5dp"/>

</androidx.cardview.widget.CardView>


谁能帮我?

最佳答案

我自己弄清楚了,但是问题出在我的图表中,是Cardview……

07-24 09:54