2015年2月13日 星期五

[Android] 一個步驟完美隱藏物件**Visibility

如果有時候要隱藏某個物件,但是又是動態隱藏,有時候要打開的話,

該如何做呢?

答案就是使用Visibility!

使用方法十分簡單:


元件類別 元件名稱 = (元件類別)findViewById(R.id.xxx);

元件名稱.setVisibility(VIEW.GONE);

有幾種用法

1.VIEW.VISIBLE(可見,保留位置)

2.VIEW.INVISIBLE(不可見,保留位置)

3.VIEW.GONE(不可見,不保留位置)

這樣一來就可以動態來改變xml裡面的東西囉!

END


[Android] 倒數計時器

倒數計時可以分為兩種

1.可重複的

2.不可重複的

第一種當然就是使用Thread囉!

不斷用while()讓他重複

第二種比較簡單一點:

我們使用到CountDownTimer()這個類別

http://developer.android.com/reference/android/os/CountDownTimer.html

官網的解釋:

Public Methods


public final synchronized void cancel ()

Added in API level 1
Cancel the countdown.

public abstract void onFinish ()

Added in API level 1
Callback fired when the time is up.

public abstract void onTick (long millisUntilFinished)

Added in API level 1
Callback fired on regular interval.
Parameters
millisUntilFinishedThe amount of time until finished.

public final synchronized CountDownTimer start ()

Added in API level 1
Start the countdown.
除了start(),cancel以外

就是onFinish() ->倒數結束以後要幹嘛?

onTick()->每次減少固定單位時間時要做甚麼?

 new CountDownTimer(30000, 1000) {

     public void onTick(long millisUntilFinished) {
         mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
     }

     public void onFinish() {
         mTextField.setText("done!");
     }
  }.start();

官方網站也很貼心的提供程式碼

當然是要建立一個TextView 叫做mTextField (記得要findViewById)

然後他就會在上面顯示倒數多少秒這樣~

CounDownTimer(總共倒數多少秒 , 每次扣多少)

每1000為一秒, 所以30000 = 30 秒 , 1000 = 1秒

範例為倒數30秒,每次扣一秒.

十分容易吧! End