版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
控制Timer定時(shí)器學(xué)習(xí)任務(wù):控制Timer定時(shí)器2運(yùn)行前單擊“暫?!焙髥螕簟伴_始”后結(jié)束后3目
錄知識(shí)總結(jié)任務(wù)實(shí)施基本原理學(xué)習(xí)目標(biāo)知識(shí)目標(biāo)管理Timer定時(shí)器能力目標(biāo)會(huì)啟動(dòng)、暫停、恢復(fù)、停止定時(shí)器學(xué)習(xí)目標(biāo)4基本原理:控制Timer定時(shí)器5Timer和TimerTask類本身并不提供控制定時(shí)器的方法。本例中的倒計(jì)時(shí)定時(shí)器的控制是通過控制num變量來實(shí)現(xiàn):num從300(5分鐘)開始減少,每100毫秒減少一次;當(dāng)停止、暫停時(shí)取消定時(shí)器;當(dāng)啟動(dòng)、恢復(fù)時(shí)重新初始化并啟動(dòng)定時(shí)器。為防止啟動(dòng)、恢復(fù)定時(shí)器后繼續(xù)啟動(dòng)、恢復(fù)定時(shí)器,需要對(duì)按鈕進(jìn)行可用性控制,即當(dāng)不需要使用某按鈕時(shí),將該按鈕設(shè)置為不用可狀態(tài)。任務(wù)實(shí)施:界面設(shè)計(jì)6Button:btnStart btnStop btnSuspend btnResumeTextView:txtTime任務(wù)實(shí)施:主界面布局設(shè)計(jì)7<?xmlversion=“1.0”encoding=“utf-8”?>
<RelativeLayout…>
<TextView
android:id="@+id/txtTime"android:layout_centerInParent="true"/>
<Button
android:id="@+id/btnSuspend"android:text="暫停"
android:layout_alignParentBottom="true"android:layout_alignParentLeft="true“…/>
<Button
android:id="@+id/btnResume"android:text="恢復(fù)"
android:layout_alignBottom="@+id/btnSuspend"android:layout_alignParentRight="true“…/>
<Button
android:id="@+id/btnStart"android:text="開始"
android:layout_above="@+id/btnSuspend"android:layout_alignLeft="@+id/btnSuspend“…/>
<Button
android:id="@+id/btnStop"android:text="停止"
android:layout_alignLeft="@+id/btnResume“android:layout_alignBottom="@+id/btnStart"/>
</RelativeLayout>activity_main.xml任務(wù)實(shí)施:初始化組件8voidinitComponent(){
txtTime=(TextView)findViewById(R.id.txtTime);
btnStart=(Button)findViewById(R.id.btnStart);…
txtTime.setText(toTime(num));
btnStart.setEnabled(true);
btnStop.setEnabled(false);
...
ButtonClickListenerlistener=newButtonClickListener();
btnStart.setOnClickListener(listener);
…
}MainActivity.java9voidinitTimer(){
handler=newHandler(){
publicvoidhandleMessage(Messagemsg){
if(msg.what==1){
txtTime.setText(toTime(num));num--;
if(num<0){//計(jì)時(shí)停止
if(timer!=null){timer.cancel();timer=null;}
if(task!=null){task.cancel();task=null;}
//計(jì)時(shí)停止后,可開始,不可停止、暫停、恢復(fù)
btnStart.setEnabled(true);btnStop.setEnabled(false);
btnSuspend.setEnabled(false);btnResume.setEnabled(false);
}
}
super.handleMessage(msg);
}};}任務(wù)實(shí)施:初始化定時(shí)器任務(wù)實(shí)施:處理按鈕單擊事件-“開始”按鈕10if(v.getId()==btnStart.getId()){//開始
num=MAX;
if(timer==null){timer=newTimer();}
if(task==null){
task=newTimerTask(){
@Overridepublicvoidrun(){Messagemsg=newMessage();msg.what=1;handler.sendMessage(msg);}
};}
timer.schedule(task,0,100);
//單擊“開始”按鈕,可停止、暫停,不可開始、恢復(fù)
btnStart.setEnabled(false);btnStop.setEnabled(true);
btnSuspend.setEnabled(true);btnResume.setEnabled(false);
}任務(wù)實(shí)施:處理按鈕單擊事件-“停止”按鈕11elseif(v.getId()==btnStop.getId()){//停止
if(timer!=null){
timer.cancel();
timer=null;
}
if(task!=null){
task.cancel();
task=null;
}
//單擊“停止”按鈕,可開始,不可停止、暫停、恢復(fù)
btnStart.setEnabled(true);
btnStop.setEnabled(false);
btnSuspend.setEnabled(false);
btnResume.setEnabled(false);
}任務(wù)實(shí)施:處理按鈕單擊事件-“暫?!卑粹o12elseif(v.getId()==btnSuspend.getId()){//暫停
if(timer!=null){
timer.cancel();
timer=null;
}
if(task!=null){
task.cancel();
task=null;
}
//單擊“暫?!卑粹o,可開始、停止、恢復(fù),不可暫停
btnStart.setEnabled(true);
btnStop.setEnabled(true);
btnSuspend.setEnabled(false);
btnResume.setEnabled(true);
}任務(wù)實(shí)施:處理按鈕單擊事件-“恢復(fù)”按鈕13elseif(v.getId()==btnResume.getId()){//恢復(fù)
if(timer==null){timer=newTimer();}
if(task==null){
task=newTimerTask(){
@Overridepublicvoidrun(){
Messagemsg=newMessage();
msg.what=1;
handler.sendMessage(msg);
}
};
}
timer.schedule(task,0,100);
//單擊“恢復(fù)”按鈕,可停止、暫停,不可開始、恢復(fù)
btnStart.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年智能化鐵藝護(hù)欄設(shè)計(jì)與施工一體化合同3篇
- 感恩的心演講稿模板錦集7篇
- 電話撥號(hào)課程設(shè)計(jì)
- 春節(jié)放假的通知范文錦集9篇
- 2024年度物流園區(qū)綜合管理承包合作協(xié)議3篇
- 2024年城市綜合體投資方合作協(xié)議6篇
- 2024年版證券交易居間合同
- 在宿舍手機(jī)被收檢討書范文(14篇)
- 2025年山東濟(jì)寧市兗州區(qū)事業(yè)單位急需緊缺高層次人才引進(jìn)(第二批)23人管理單位筆試遴選500模擬題附帶答案詳解
- 2025年山東濟(jì)南市南部山區(qū)事業(yè)單位公開招聘工作人員9人管理單位筆試遴選500模擬題附帶答案詳解
- 2024年江蘇徐礦綜合利用發(fā)電有限公司招聘筆試參考題庫含答案解析
- 統(tǒng)編版六年級(jí)語文詞句段運(yùn)用練習(xí)
- 打葉復(fù)烤工藝流程簡圖課件
- 施工現(xiàn)場入場安全教育課件
- ce自我聲明模板
- 克與千克說課課件
- 國開電大行管本科《政府經(jīng)濟(jì)學(xué)》期末考試總題庫2024版
- 生產(chǎn)與運(yùn)作管理第三版課后習(xí)題含答案版
- 高頻考點(diǎn)之評(píng)價(jià)與文本互證考題專練-2024年高考語文二輪復(fù)習(xí)三點(diǎn)突破講解專練
- 《高鐵酸鉀的制備》課件
- 上海財(cái)經(jīng)大學(xué)《801經(jīng)濟(jì)學(xué)》歷年考研真題及詳解
評(píng)論
0/150
提交評(píng)論