最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

android利用handler實現(xiàn)倒計時功能

 更新時間:2020年11月24日 11:55:13   作者:codeTcy  
這篇文章主要為大家詳細介紹了android利用handler實現(xiàn)倒計時功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了android利用handler實現(xiàn)倒計時的具體代碼,供大家參考,具體內(nèi)容如下

xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:app="http://schemas.android.com/apk/res-auto"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 tools:context=".MainActivity">

 <TextView
  android:id="@+id/text"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="Hello World!"
  app:layout_constraintBottom_toBottomOf="parent"
  app:layout_constraintLeft_toLeftOf="parent"
  app:layout_constraintRight_toRightOf="parent"
  app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

java

package com.tcy.handlertest;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.TextView;

import java.lang.ref.WeakReference;

public class MainActivity extends AppCompatActivity {

 /**
  * 倒計時標(biāo)記handler code
  */
 public static final int COUNT_DOWN_CODE = 10001;
 /**
  * 倒計時最大值
  */
 public static final int MAX_COUNT = 10;
 /**
  * 倒計時間隔
  */
 public static final int DELAY_MILLIS = 1000;
 TextView textView;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  textView = findViewById(R.id.text);


  CountdownTimeHandler handler = new CountdownTimeHandler(this);
  Message message = Message.obtain();
  message.what = COUNT_DOWN_CODE;
  message.arg1 = MAX_COUNT;
  handler.sendMessageDelayed(message, DELAY_MILLIS);


 }

 public static class CountdownTimeHandler extends Handler {
  //弱引用加在上下文上面
  final WeakReference<MainActivity> weakReference;

  //這個方法要改一下,這樣就能直接傳進來上下文
  public CountdownTimeHandler(MainActivity activity) {
   this.weakReference = new WeakReference<>(activity);
  }

  @Override
  public void handleMessage(@NonNull Message msg) {
   super.handleMessage(msg);

   //得到上下文
   MainActivity activity = weakReference.get();

   switch (msg.what) {
    case COUNT_DOWN_CODE:
     int value = msg.arg1;
     activity.textView.setText(String.valueOf(value--));


     if (value >= 0) {
      //再把value發(fā)出去
      Message message = Message.obtain();
      message.what = COUNT_DOWN_CODE;
      message.arg1 = value;
      sendMessageDelayed(message, DELAY_MILLIS);
     }


     break;
   }
  }
 }
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

新野县| 英德市| 天镇县| 九龙县| 临西县| 阿鲁科尔沁旗| 武川县| 汉川市| 普宁市| 兰考县| 许昌县| 齐齐哈尔市| 黄冈市| 兰西县| 佛学| 台江县| 大关县| 汕尾市| 闽侯县| 广宗县| 十堰市| 鄂托克前旗| 交口县| 乌苏市| 舒城县| 峨眉山市| 黄山市| 海原县| 平湖市| 娱乐| 烟台市| 阳城县| 安庆市| 叶城县| 哈尔滨市| 西林县| 寻甸| 张家港市| 惠东县| 思茅市| 夏河县|