當前位置:編程學習大全網 - 源碼下載 - 微博源代碼安卓

微博源代碼安卓

這是壹個可以創建多線程消息的函數。

如何使用:

1,首先創建壹個Handler對象。

Handler Handler = new Handler();

2,然後創建壹個Runnable對象

Runnable Runnable = new Runnable(){

@覆蓋

公共無效運行(){

// TODO自動生成的方法存根

//怎麽辦,在這裏再次調用這個Runnable對象,實現每兩秒壹次的定時器操作。

handler.postDelayed(this,2000);

}

};

3.使用PostDelayed方法,並在兩秒鐘後調用這個Runnable對象。

handler.postDelayed(runnable,2000);

實際上實現了壹個2s的定時器。

4.如果妳想關閉這個定時器,妳可以這樣做。

handler . remove callbacks(runnable);

當然,妳也可以嘗試做壹個鬧鐘提醒延時功能,比如先用MediaPlayer播放鬧鐘聲音。

不記得的話,被叫停後,下次5分鐘後播放。如果再次停止,下次將在4分鐘內播放。

………………

可以通過改變延遲時間來實現,用靜態對象操作會更容易。

它可以是異步的,但是Runnable是在Handler對象所在的線程中執行的。

如果它所在的線程是UI線程,還是不能在Runnable中執行耗時的操作,否則就是ANR。

前幾天我們自己的設備卡的很厲害,不到1秒就卡在跳轉界面了。我把跳轉動作放在Runnable裏面,在外面加了壹個彈出進度提示框。

註:舉例說明。

公共類XXX擴展活動

{

@覆蓋

公共void onCreate(Bundle saved instancestate)

{

super . oncreate(savedInstanceState);

requestWindowFeature(窗口。特征_編號_標題);

setContentView(r . layout . loading);//顯示屏1

Handler Handler = new Handler();

handler.postDelayed(新的splashhandler(),2000);//延遲2秒,然後運行splashhandler的run()。

}

類splashhandler實現Runnable

{

公共無效運行()

{

start activity(new Intent(get application()、second activity . class));//顯示第二個屏幕。

XXX . this . finish();//結束屏幕1

}

}

}

  • 上一篇:如何為公司建立壹個網站?
  • 下一篇:java和android中的上下文是什麽意思?怎麽處理?
  • copyright 2024編程學習大全網