編輯:關於android開發
安卓提供了一個計時器組件:Chronometer,該組件extends TextView,因此都會顯示一段文本,但是它顯示的時間是從某個起始時間開始過去了多少時間,它只提供了android:format一個屬性用於指定計時器的計數格式。

Chronometer的用法很簡單,它支持如下用法:
getBase():返回時間。
setBase(long base):設置計時器的起始時間。
start():開始計時。
stop():停止計時。
setFormat(String format):設置顯示時間的格式。
setOnChronometerTickListener(Chronometer.OnChronometerTickListener listener):為計時器綁定監聽事件。
下面程序設計了一個一分鐘的計時器。
首先:在XML文件中定義一個Chronomete和Button組件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<Chronometer
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/chronometer"
android:textColor="#ff0303"
android:textSize="12pt"
android:layout_gravity="center_horizontal"
android:focusable="true" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="啟動"
android:id="@+id/button"
android:layout_gravity="center_horizontal" />
</LinearLayout>
其次:通過setOnChronometerTickListener(Chronometer.OnChronometerTickListener listener)函數為計時器綁定監聽事件。程序定義了一個Chronometer組件和Button組件。當用戶單擊Button時開始計時,計時時間為一分鐘。
package happy.chronometer;
import android.os.Bundle;
import android.os.SystemClock;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;
import android.widget.Chronometer;
public class MainActivity extends AppCompatActivity {
Chronometer ch ;
Button start ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
// 獲取計時器組件
ch=(Chronometer)findViewById(R.id.chronometer);
// 獲取開始組件
start = (Button)findViewById(R.id.button);
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//設置開始計時時間
ch.setBase(SystemClock.elapsedRealtime());
//啟動計時器
ch.start();
}
});
//為計時器綁定監聽事件
ch.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener()
{
@Override
public void onChronometerTick(Chronometer ch)
{
// 如果從開始計時到現在超過了60s
if (SystemClock.elapsedRealtime() - ch.getBase() > 60 * 1000)
{
ch.stop();
start.setEnabled(true);
}
}
});
}
}

最後:我們可以看到如上的效果,其中時間為已經流逝的時間。
Android實現原生側滑菜單的超簡單方式
Android實現原生側滑菜單的超簡單方式 先來看看效果圖 當你點擊菜單可以更改圖標,例如點擊happy,首頁就會變一個笑臉,這個實現的過程超級簡單
android基礎部分再學習--AIDL
android基礎部分再學習--AIDL AIDL與其他IDL語言類似,你需要做一些工作。 它允許你定義客戶端與服務端達成一致的程序接口使用進程間通信相互交流。 在ANd
android 自定義狀態欄和導航欄分析與實現
android 自定義狀態欄和導航欄分析與實現 效果 android 4.4之後,系統是支持自定義狀態欄和導航欄的,舉個最典型的例子就是bilibili客戶端了(iO
看Facebook是如何優化React Native性能,facebookreact
看Facebook是如何優化React Native性能,facebookreact原文出處: facebook 譯文出處:@