MPAndroidChart,从textView更新数据

MPAndroidChart,从textView更新数据,android,android-studio,mpandroidchart,Android,Android Studio,Mpandroidchart,我试图让图表在每次textView中的值更改时刷新。以下是onCreate的代码片段 如有任何建议,我们将不胜感激 final ArrayList<Entry> entriesa= new ArrayList<>(); final LineChart lineChart = (LineChart) findViewById(R.id.chart); final LineDataSet dataset = new LineDataSet(entriesa,"AWAY");

我试图让图表在每次textView中的值更改时刷新。以下是onCreate的代码片段

如有任何建议,我们将不胜感激

final ArrayList<Entry> entriesa= new ArrayList<>();
final LineChart lineChart = (LineChart) findViewById(R.id.chart);
final LineDataSet dataset = new LineDataSet(entriesa,"AWAY");
final LineData data = new LineData(dataset);

entriesa.add(new Entry(0,0));
lineChart.setData(data);
lineChart.invalidate();


final TextView viewa1 = (TextView) findViewById(R.id.sa1);
viewa1.addTextChangedListener(new TextWatcher() {
String s=viewa1.getText().toString();
int iv = Integer.parseInt(s.replaceAll("[\\D]", ""));

    public void beforeTextChanged ( CharSequence s, int start, int count, int after ) {

    }
    public void afterTextChanged ( Editable s ) {

    }
    public void onTextChanged(CharSequence s, int start, int before, int count ) {
    entriesa.set(0,new Entry(0,iv));
    data.notifyDataChanged();
    lineChart.notifyDataSetChanged();
    lineChart.invalidate();}
});
final ArrayList entriesa=new ArrayList();
最终线形图线形图=(线形图)findViewById(R.id.chart);
最终LineDataSet数据集=新的LineDataSet(entriesa,“离开”);
最终线条数据=新线条数据(数据集);
添加(新条目(0,0));
线形图。设置数据(数据);
lineChart.invalidate();
最终文本视图视图A1=(文本视图)findViewById(R.id.sa1);
viewa1.addTextChangedListener(新的TextWatcher(){
字符串s=viewa1.getText().toString();
int iv=Integer.parseInt(s.replaceAll(“[\\D]”,“”);
更改前文本之前的公共void(字符序列s、int start、int count、int after){
}
公共无效后文本已更改(可编辑){
}
public void onTextChanged(字符序列、int start、int before、int count){
entriesa.set(0,新条目(0,iv));
data.notifyDataChanged();
lineChart.notifyDataSetChanged();
lineChart.invalidate();}
});

在onTextChanged中声明的LineData并使用addEntry将其附加到LineData中,而不是添加到数组列表中

现在,使用getData()在每个ContextChanged上声明数据,并使用addEntry添加最新的条目。这将创建一个连续的流。。比如实时数据。我还使用了ILineDataSet,因为我在同一个图表上有多个数据点

10个数据点指向视口,现在我的应用程序中有了一个漂亮的自动滚动折线图

LineData data = lineChart.getData();
ILineDataSet set = data.getDataSetByIndex(0);
data.addEntry(new Entry(set.getEntryCount(),iv),0);
data.notifyDataChanged();
lineChart.notifyDataSetChanged();
lineChart.setVisibleXRangeMaximum(10);
lineChart.moveViewToX(data.getEntryCount());

onTextChanged中声明的LineData没有添加到数组列表中,而是使用addEntry将其添加到LineData中并添加到新条目

现在,使用getData()在每个ContextChanged上声明数据,并使用addEntry添加最新的条目。这将创建一个连续的流。。比如实时数据。我还使用了ILineDataSet,因为我在同一个图表上有多个数据点

10个数据点指向视口,现在我的应用程序中有了一个漂亮的自动滚动折线图

LineData data = lineChart.getData();
ILineDataSet set = data.getDataSetByIndex(0);
data.addEntry(new Entry(set.getEntryCount(),iv),0);
data.notifyDataChanged();
lineChart.notifyDataSetChanged();
lineChart.setVisibleXRangeMaximum(10);
lineChart.moveViewToX(data.getEntryCount());

我不知道答案,但也许进入最终ArrayList的条目也是最终的?但我不确定我不知道答案,但也许进入你的最终ArrayList的条目也是最终的?但我不确定