1. 程式人生 > >Handler.post(Runable),Runable是執行在主執行緒中的。

Handler.post(Runable),Runable是執行在主執行緒中的。

 在Android中可以通過handler方法完成資料的執行緒間的傳遞,但一定要將handler得到的資料通過loop傳遞到主執行緒再更新UI嗎?其實也可以直接使用handler設計的post方法進行實現,handler的post方法是在主執行緒執行的,可以直接進行UI的更新操作。

   MainActivity的程式碼

  1. publicclass MainActivity extends Activity {  
  2.     
        private TextView tv;  
  3.     private Handler myhandler=new Handler();  
  4.     @Override
  5.     protectedvoid onCreate(Bundle savedInstanceState) {  
  6.         super.onCreate(savedInstanceState);  
  7.         setContentView(R.layout.activity_main);  
  8.         tv=(TextView )this.findViewById(R.id.TextView1);  
  9.         new MyThread(){  
    1.         publicvoid run() {   
    2.             Runnable runnable=new
       Runnable() {  
    3.                 @Override
    4.                 publicvoid run() {  
    5.                     tv.setText("線上程中設定了");  
    6.                 }  
    7.             };  
    8.             myhandler.post(runnable);  
    9.        }  
    10. .start();  
  10.    }  
  11. }