美文网首页
2018-07-16

2018-07-16

作者: 梦游的沙师弟 | 来源:发表于2018-07-16 09:05 被阅读0次

    package cn.dlc.intelligentmattressfamily.until;

    import android.graphics.Color;

    import android.os.CountDownTimer;

    import android.text.Spannable;

    import android.text.SpannableString;

    import android.text.style.ForegroundColorSpan;

    import android.view.Gravity;

    import android.widget.TextView;

    /**

    * 作用:倒计时

    */

    public class MyCountDownTimer extends CountDownTimer {

        private TextView mTextView;

        /**

        * @param millisInFuture    The number of millis in the future from the call

        *                          to {@link #start()} until the countdown is done and {@link #onFinish()}

        *                          is called.

        * @param countDownInterval The interval along the way to receive

        *                          {@link #onTick(long)} callbacks.

        */

        public MyCountDownTimer(TextView textView,long millisInFuture, long countDownInterval) {

            super(millisInFuture, countDownInterval);

            this.mTextView = textView;

            start();

        }

        @Override

        public void onTick(long millisUntilFinished) {

            mTextView.setClickable(false); //设置不可点击 

            mTextView.setText(String.valueOf(millisUntilFinished / 1000));  //设置倒计时时间 

            mTextView.setGravity(Gravity.CENTER);//设置居中

            /**

            * 超链接 URLSpan

            * 文字背景颜色 BackgroundColorSpan

            * 文字颜色 ForegroundColorSpan

            * 字体大小 AbsoluteSizeSpan

            * 粗体、斜体 StyleSpan

            * 删除线 StrikethroughSpan

            * 下划线 UnderlineSpan

            * 图片 ImageSpan

            * http://blog.csdn.net/ah200614435/article/details/7914459

            */

            SpannableString spannableString = new SpannableString(mTextView.getText().toString());  //获取按钮上的文字 

            ForegroundColorSpan span = new ForegroundColorSpan(Color.RED);

            /**

            * public void setSpan(Object what, int start, int end, int flags) {

            * 主要是start跟end,start是起始位置,无论中英文,都算一个。

            * 从0开始计算起。end是结束位置,所以处理的文字,包含开始位置,但不包含结束位置。

            */

            spannableString.setSpan(span, 0, 0, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);//将倒计时的时间设置为红色 

            mTextView.setText(spannableString);

        }

        @Override

        public void onFinish() {

            mTextView.setText("获取验证码");

            mTextView.setClickable(true);//重新获得点击 

        }

    }

    相关文章

      网友评论

          本文标题:2018-07-16

          本文链接:https://www.haomeiwen.com/subject/tqevpftx.html