MainActivity中为什么不能在自己创建的线程中调用控件的方法?

来源:互联网 发布:rpc动态端口 编辑:程序博客网 时间:2024/05/02 00:59
下面是详细代码,有兴趣的朋友可以直接复制在自己的电脑上看看,我不知道为什么edittext.gettext().toString()就不能用,到底是哪里的问题。急急急!



package com.example.edittext1;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity implements Runnable{

private Button bt1;
private EditText et1;
private TextView tv1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.acticity_main);

bt1 = (Button) findViewById(R.id.button1);
et1 = (EditText) findViewById(R.id.editText1);
tv1 = (TextView) findViewById(R.id.textView1);


bt1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
MainActivity ma = new MainActivity();
Thread tr = new Thread(ma);
tr.start();
}
});
}
@Override
public void run() {
try {
Thread.sleep(10);
try {
String etstr2 = et1.getText().toString();
tv1.setText("jiwiwhduih") ;
} catch (Exception e) {
e.printStackTrace();
System.out.println("error2");
}
} catch (InterruptedException e) {
e.printStackTrace();
System.out.println("error");
}
}
}

0 0
原创粉丝点击