Я наконец решил проблему, используя эти коды
recyclerView.setOnScrollChangeListener(new RecyclerView.OnScrollChangeListener()
{
@Override
public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX,
int oldScrollY) {
lineChart.scrollBy(scrollX - oldScrollX, scrollY - oldScrollY);
lineChart.notifyDataSetChanged();
lineChart.invalidate();
}
});
lineChart.setOnChartGestureListener(new OnChartGestureListener() {
@Override
public void onChartGestureStart(MotionEvent me,
ChartTouchListener.ChartGesture lastPerformedGesture) {
}
@Override
public void onChartGestureEnd(MotionEvent me, ChartTouchListener.ChartGesture
lastPerformedGesture) {
}
@Override
public void onChartLongPressed(MotionEvent me) {
}
@Override
public void onChartDoubleTapped(MotionEvent me) {
}
@Override
public void onChartSingleTapped(MotionEvent me) {
}
@Override
public void onChartFling(MotionEvent me1, MotionEvent me2, float velocityX, float velocityY) {
}
@Override
public void onChartScale(MotionEvent me, float scaleX, float scaleY) {
}
@Override
public void onChartTranslate(MotionEvent me, float dX, float dY) {
recyclerView.scrollBy((int) -dX, (int) -dY);
lineChart.notifyDataSetChanged();
lineChart.invalidate();
}
});
теперь все работает хорошо. единственная проблема в том, что моя диаграмма прокручивается за родительской
Это похоже на решение проблемы с вложенной прокруткой, и, вероятно, на нее уже дан ответ. Проверьте, поможет ли вам ответ здесь: stackoverflow.com/questions/48477033/… или найдите что-то вроде «представление прокрутки внутри recylcerview»