Android實(shí)現(xiàn)倒計(jì)時30分鐘功能
以30分鐘為例寫的一個倒計(jì)時:
直接上代碼
public class MainActivity extends AppCompatActivity {
private int minute = 30;//這是分鐘
private int second = 0;//這是分鐘后面的秒數(shù)。這里是以30分鐘為例的,所以,minute是30,second是0
private TextView timeView;
private Timer timer;
private TimerTask timerTask;
//這是接收回來處理的消息
private Handler handler = new Handler() {
public void handleMessage(Message msg) {
if (minute == 0) {
if (second == 0) {
timeView.setText("Time out !");
if (timer != null) {
timer.cancel();
timer = null;
}
if (timerTask != null) {
timerTask = null;
}
} else {
second--;
if (second >= 10) {
timeView.setText("0" + minute + ":" + second);
} else {
timeView.setText("0" + minute + ":0" + second);
}
}
} else {
if (second == 0) {
second = 59;
minute--;
if (minute >= 10) {
timeView.setText(minute + ":" + second);
} else {
timeView.setText("0" + minute + ":" + second);
}
} else {
second--;
if (second >= 10) {
if (minute >= 10) {
timeView.setText(minute + ":" + second);
} else {
timeView.setText("0" + minute + ":" + second);
}
} else {
if (minute >= 10) {
timeView.setText(minute + ":0" + second);
} else {
timeView.setText("0" + minute + ":0" + second);
}
}
}
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
timeView = (TextView) findViewById(R.id.tv);
timeView.setText(minute + ":" + second);
timerTask = new TimerTask() {
@Override
public void run() {
Message msg = new Message();
msg.what = 0;
handler.sendMessage(msg);
}
};
timer = new Timer();
timer.schedule(timerTask, 0, 1000);
}
@Override
protected void onDestroy() {
if (timer != null) {
timer.cancel();
timer = null;
}
if (timerTask != null) {
timerTask = null;
}
minute = -1;
second = -1;
super.onDestroy();
}
@Override
protected void onStart() {
super.onStart();
}
@Override
protected void onStop() {
super.onStop();
}
@Override
protected void onResume() {
super.onResume();
}
@Override
protected void onRestart() {
super.onRestart();
}
@Override
protected void onPause() {
super.onPause();
}
}
ok,這就完成了。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- android自定義倒計(jì)時控件示例
- android實(shí)現(xiàn)倒計(jì)時功能代碼
- Android實(shí)現(xiàn)計(jì)時與倒計(jì)時的常用方法小結(jié)
- Android自定義圓形倒計(jì)時進(jìn)度條
- Android實(shí)現(xiàn)倒計(jì)時方法匯總
- Android啟動頁面定時跳轉(zhuǎn)的三種方法
- Android利用CountDownTimer實(shí)現(xiàn)倒計(jì)時功能 Android實(shí)現(xiàn)停留5s跳轉(zhuǎn)到登錄頁面
- Android 實(shí)現(xiàn)頁面跳轉(zhuǎn)
- Android使用Intent實(shí)現(xiàn)頁面跳轉(zhuǎn)
- Android實(shí)現(xiàn)倒計(jì)時結(jié)束后跳轉(zhuǎn)頁面功能
相關(guān)文章
Android RecyclerView上拉加載和下拉刷新(基礎(chǔ)版)
這篇文章主要為大家詳細(xì)介紹了Android RecyclerView上拉加載和下拉刷新的相實(shí)現(xiàn)方法,內(nèi)容簡單,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-02-02
android編程之下拉刷新實(shí)現(xiàn)方法分析
這篇文章主要介紹了android編程之下拉刷新實(shí)現(xiàn)方法,以實(shí)例形式詳細(xì)分析了Android編程中針對ListView下拉刷新的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-11-11
Android 自定義View之邊緣凹凸的優(yōu)惠券效果的開發(fā)過程
這篇文章主要介紹了Android 自定義View之邊緣凹凸的優(yōu)惠券效果,主要總結(jié)一下在自定義View的開發(fā)過程中需要注意的一些地方.需要的朋友可以參考下2018-03-03
Android實(shí)戰(zhàn)打飛機(jī)游戲之實(shí)現(xiàn)主角以及主角相關(guān)元素(3)
這篇文章主要為大家詳細(xì)介紹了Android實(shí)戰(zhàn)打飛機(jī)游戲之實(shí)現(xiàn)主角以及主角相關(guān)元素,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-07-07
Android ListView中動態(tài)添加RaidoButton的實(shí)例詳解
這篇文章主要介紹了Android ListView中動態(tài)添加RaidoButton的實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-08-08
Android App中實(shí)現(xiàn)可以雙擊放大和縮小圖片功能的實(shí)例
這篇文章主要介紹了Android App中實(shí)現(xiàn)可以雙擊放大和縮小圖片功能的實(shí)例,文中的例子不能做到逐級放大但可以做到邊界控制和以觸摸點(diǎn)為中心進(jìn)行放大,需要的朋友可以參考下2016-03-03
Android 解決WebView多進(jìn)程崩潰的方法
這篇文章主要介紹了Android 解決WebView多進(jìn)程崩潰的方法,幫助大家更好的理解和學(xué)習(xí)使用Android開發(fā),感興趣的朋友可以了解下2021-03-03
一鍵移除ButterKnife并替換為ViewBinding的舊項(xiàng)目拯救
這篇文章主要為大家介紹了一鍵移除ButterKnife并替換為ViewBinding的舊項(xiàng)目拯救詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
Android使用自定義PageTransformer實(shí)現(xiàn)個性的ViewPager動畫切換效果
這篇文章主要介紹了Android使用自定義PageTransformer實(shí)現(xiàn)個性的ViewPager切換動畫,具有很好的參考價值,一起跟隨小編過來看看吧2018-05-05

