利用CountDownTimer实现倒计时,跳转界面

利用CountDownTimer实现倒计时。
举个栗子,引导页面最后一个界面要停留5s跳转到登录页面。代码如下:

//假设 这是引导页面最后一个界面
public class MainActivity extends Activity {
    private TextView count_time;
    private MyCountDownTimer myCountDownTimer;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        count_time= (TextView) findViewById(R.id.count_time);
        //new对象,传入要停留的时间
        myCountDownTimer=new MyCountDownTimer(5100,1000);
        //开始倒计时
        myCountDownTimer.start();
    }
    //自定义一个类继承自CountDownTimer,实现多少秒后的逻辑
    class MyCountDownTimer extends CountDownTimer{
        /**
         *
         * @param millisInFuture
         * 表示以毫秒为单位 倒计时的总数
         *
         * 例如 millisInFuture=1000 表示1秒
         *
         * @param countDownInterval
         * 表示 间隔 多少微秒 调用一次 onTick 方法
         *
         * 例如: countDownInterval =1000 ; 表示每1000毫秒调用一次onTick()
         *
         */
        public MyCountDownTimer(long millisInFuture, long countDownInterval) {
            super(millisInFuture, countDownInterval);
        }

        @Override
        public void onTick(long millisUntilFinished) {
            count_time.setText(millisUntilFinished/1000+"s");
        }

        @Override
        public void onFinish() {
            //停止倒计时
            myCountDownTimer.cancel();
            //实现页面跳转
            startActivity(new Intent(MainActivity.this,SecondActivity.class));
        }
    }
}
//引导页最后一个界面的.xml布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
   >

    <TextView
        android:id="@+id/count_time"
        android:background="@drawable/bg"
        android:textColor="@android:color/holo_blue_bright"
        android:layout_width="60dp"
        android:layout_height="30dp"
        android:layout_centerInParent="true"/>

</RelativeLayout>
//这是跳转后的界面
public class SecondActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
    }
}
//引导页跳转后界面的.xml布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
   >

    <TextView
        android:textColor="@android:color/holo_blue_bright"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="这是跳转后的页面"
        android:textSize="30sp"
        android:id="@+id/time" />

</RelativeLayout>

猜你喜欢

转载自blog.csdn.net/Android_Programmer/article/details/76168468
今日推荐