在 textview 元素中显示实时数据

Displaying realtime data in a textview element

我在 android 应用程序中使用 graphview 库来绘制来自传感器的实时数据。我已经有了图表,但我还想在文本视图中显示图表中绘制的当前值。

这是我用来在图形视图中绘制数据的代码。在这里,作为示例,我生成并模拟了 100 个随机值。但原理是一样的。并且这些随机值应在图表中添加(appendData())的同时显示。

  @Override
protected void onResume() {
 super.onResume();
 // we're going to simulate real time with thread that append data to the graph
 new Thread(new Runnable() {

   @Override
   public void run() {
     // we add 100 new entries
     for (int i = 0; i < 100; i++) {
       runOnUiThread(new Runnable() {

         @Override
         public void run() {
           addEntry();
         }
       });

       try {
         Thread.sleep(1000);
       } catch (InterruptedException e) {
       }
     }
   }
  }).start();
 }

private void addEntry() {
  series.appendData(new DataPoint(lastX++, RANDOM.nextDouble() * 100d),    true, 100);     
 }

或者除了使用 textview 元素还有其他方法吗?

提前致谢!

您应该使用 xml 属性 "id" 在您的布局中创建一个带有标识符的 TextView。即

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/textViewID"
    />

之后,您使用 findview 函数在代码中获取引用。

        TextView lastValue = (TextView) findViewById(R.id.textViewID);

有了这个引用后,您可以使用 setText 函数更改它显示的值。

  lastValue.setText(RANDOM.nextDouble());

您可以尝试在 appendData 函数之后执行此操作。如果您可以直接在 addEntry 函数中调用静态方法,您可以将视图作为参数传递并从 View 对象调用 findview,它应该可以工作。