【移動應(yīng)用開發(fā)技術(shù)】如何在Android中使用Handler與Countdowntimer實(shí)現(xiàn)一個倒計時功能_第1頁
【移動應(yīng)用開發(fā)技術(shù)】如何在Android中使用Handler與Countdowntimer實(shí)現(xiàn)一個倒計時功能_第2頁
【移動應(yīng)用開發(fā)技術(shù)】如何在Android中使用Handler與Countdowntimer實(shí)現(xiàn)一個倒計時功能_第3頁
【移動應(yīng)用開發(fā)技術(shù)】如何在Android中使用Handler與Countdowntimer實(shí)現(xiàn)一個倒計時功能_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

【移動應(yīng)用開發(fā)技術(shù)】如何在Android中使用Handler與Countdowntimer實(shí)現(xiàn)一個倒計時功能

本篇文章為大家展示了如何在Android中使用Handler與Countdowntimer實(shí)現(xiàn)一個倒計時功能,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。實(shí)現(xiàn)方法去除actionBar閃屏頁面一般都為全屏顯示,這里我們首先需要去除actionBar,在res/values/styles.xml中設(shè)置:這里也建議大家在后期開發(fā)中盡量不要用死板的actionBar,可以根據(jù)項(xiàng)目需求使用ToolBar或者自定義TitleBar組件來替代actionBar,這樣的話界面設(shè)計會更加靈活。2.2layout布局這里僅僅設(shè)置布局背景圖片,以及在右上角添加TextView用于顯示倒計時,做的有點(diǎn)糙,見諒,代碼如下:<?xml

version="1.0"

encoding="utf-8"?>

<RelativeLayout

xmlns:android="/apk/res/android"

xmlns:tools="/tools"

android:id="@+id/activity_splash"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:background="@mipmap/background_login"

tools:context="com.mly.panhouye.handlerdemo.SplashActivity">

<TextView

android:gravity="right"

android:id="@+id/tv_time"

android:textColor="@color/colorAccent"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="SS"

android:textSize="30sp"/>

</RelativeLayout>2.3java實(shí)現(xiàn)代碼2.1中只是去除了app的ActionBar,要做的全屏顯示,仍需要在activity中使用代碼設(shè)置。package

com.mly.panhouye.handlerdemo;

import

android.content.Intent;

import

android.os.Bundle;

import

android.os.CountDownTimer;

import

android.os.Handler;

import

android.os.Message;

import

android.support.v7.app.AppCompatActivity;

import

android.util.Log;

import

android.view.Window;

import

android.view.WindowManager;

import

android.widget.TextView;

public

class

SplashActivity

extends

AppCompatActivity

{

private

MyHandler

myHandler

=

new

MyHandler();

private

TextView

tv_time;

private

MyCountDownTimer

mc;

@Override

protected

void

onCreate(Bundle

savedInstanceState)

{

super.onCreate(savedInstanceState);

//設(shè)置Activity為全屏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

WindowManager.LayoutParams.FLAG_FULLSCREEN);

//去標(biāo)題狀態(tài)欄

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_splash);

tv_time

=

(TextView)

findViewById(R.id.tv_time);

mc

=

new

MyCountDownTimer(5000,

1000);

mc.start();

/**

*

使用handler的postDelayed延遲5秒執(zhí)行頁面跳轉(zhuǎn)

*

(與CountDownTimer的millisInFuture一致)

*/

myHandler.postDelayed(new

Runnable()

{

@Override

public

void

run()

{

startMainActivity();

}

},5000);

}

//將Handler聲明為靜態(tài)內(nèi)部類

private

static

class

MyHandler

extends

Handler

{

@Override

public

void

handleMessage(Message

msg)

{

super.handleMessage(msg);

}

}

//頁面跳轉(zhuǎn)的方法

private

void

startMainActivity(){

Intent

intent

=

new

Intent(this,Main3Activity.class);

startActivity(intent);

finish();//完成跳轉(zhuǎn)后銷毀閃屏頁(從棧內(nèi)移除)

}

class

MyCountDownTimer

extends

CountDownTimer

{

/**

*

@param

millisInFuture

*

表示以毫秒為單位

倒計時的總數(shù)

*

例如

millisInFuture=1000

表示1秒

*

@param

countDownInterval

*

表示

間隔

多少微秒

調(diào)用一次

onTick

方法

*

例如:

countDownInterval

=1000

;

表示每1000毫秒調(diào)用一次onTick()

*/

public

MyCountDownTimer(long

millisInFuture,

long

countDownInterval)

{

super(millisInFuture,

countDownInterval);

}

public

void

onFinish()

{

tv_time.setText("正在跳轉(zhuǎn)");

}

public

void

onTick(long

millisUntilFinished)

{

tv_time.setText("倒計時("

+

millisUntilFinished

/

1000

+

")");

Log.i("tag","倒計時"+millisUntilFinished

/

1000);

}

}

@Override

prot

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論