如何在表面视图中设置run方法中的文本?

时间:2013-07-13 03:19:59

标签: android textview surfaceview

我有SurfaceView和Run()方法,它就像一个循环,如何在这个Run方法中编辑textView文本? 我写道:

  textView1.setText("my text");

它不起作用?有任何想法吗 ? 代码摘要是:

public class GFXSurface extends Activity {

MySurface ourSurfaceView;
TextView textView1;

protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
            setContentView(ourSurfaceView);
            }

public class MySurface extends SurfaceView implements Runnable{

       @Override
       public void run() {
           //here i want to edit textView1
            }
     }
}

2 个答案:

答案 0 :(得分:1)

您无法更改从另一个线程在主线程上初始化的视图。您应该考虑使用Handler在UI线程上发布。在运行方法中更新TextView也不是明智之举,但我不确定你要完全实现的目标。

答案 1 :(得分:0)

您可以尝试使用TextView方法调用为runOnUiThread()设置文字,例如:

runOnUiThread(new Runnable(){
  public void run() {
   //here set the textview content
  }
});