public class Enter0 extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_enter0);
TextView tv1 = (TextView) this.findViewById(R.id.t1);
cc suo=new cc();
Thread t = new Thread(suo);
t.start();
};
}
class cc extends Enter0 implements Runnable{
public void run() {
tv1.setEnabled(false);
}
}
使用繼承后。在后面的“cc”中怎么使用“Enter0”中的tv1呀
聽說是要用Handler,但是Handler不會用呀,自己網上搜看的很蒙,有沒有好心人直接幫我在這個代碼上改一下呀,感激不盡

uj5u.com熱心網友回復:
Enter0.this.xxxxuj5u.com熱心網友回復:
TextView tv1 改成成員變數就行了uj5u.com熱心網友回復:
//將物件作為引數傳遞給cc類即可public class Enter0 extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_enter0);
TextView tv1 = (TextView) this.findViewById(R.id.t1);
cc suo=new cc(tv1);
Thread t = new Thread(suo);
t.start();
};
}
class cc extends Enter0 implements Runnable{
private TextView tv1;
public cc(TextView tv1) {
super();
this.tv1 = tv1;
}
public void run() {
tv1.setEnabled(false);
}
}
uj5u.com熱心網友回復:
public class Main2Activity extends AppCompatActivity {private TextView textview;
private Handler handler=new Handler () {
@Override
public void handleMessage(@NonNull Message msg) {
super.handleMessage (msg);
Log.e ("TAG", "handleMessage: ");
switch (msg.what) {
case 1:
String str =(String) msg.obj;
textview.setText (str);
break;
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
setContentView (R.layout.activity_main2);
textview=findViewById (R.id.textview);
cc suo=new cc ();
Thread t=new Thread (suo);
t.start ();
}
class cc extends Main2Activity implements Runnable {
public void run() {
Log.e ("TAG", "run: ");
Message message = new Message ();
message.what = 1;
message.obj = "test";
handler.sendMessage (message);
}
}
}
要用handler的話這樣
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/22152.html
標籤:Android
