Blog chia sẻ kinh nghiệm lập trình Android

Chào các bạn hôm nay mình sẽ cùng các bạn tạo một ứng dụng mà có khả năng đếm số tăng hoặc giảm dần theo một khoảng thời gian nào đó trên một tổng thời gian. Đó chính là CountDownTimer.
Trong các ứng dụng Game rất hay sử dụng CountDownTimer đề đếm thời gian.
 Bây giờ mình sẽ tạo một app để hiển thị hết khả năng của CountDownTimer cho các bạn.

Giao diện ứng dụng như sau :




full code xml.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="#000000"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/tvshow"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="184dp"
        android:textSize="30dp"
        android:textColor="#FF5635"
        android:text="0 %" />

    <Button
        android:id="@+id/btstart"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_marginTop="54dp"
        android:layout_toLeftOf="@+id/tvshow"
        android:textColor="#ffff34"
        android:text="Start" />

    <Button
        android:id="@+id/btstop"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/btstart"
        android:layout_alignBottom="@+id/btstart"
        android:layout_alignLeft="@+id/tvshow"
        android:layout_marginLeft="21dp"
        android:textColor="#fffff4"
        android:text="Stop" />

</RelativeLayout>



Giờ sang class java , chúng ta sùng countdownter.




full code : java class 
Phần này khá đơn giản các bạn xem chú chích code là hiểu ngay
package com.example.countdowntimer;

import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity {

CountDownTimer count;
int index=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView tvshow = (TextView)findViewById(R.id.tvshow);

// bắt đầu và tiếp tục đếm sau khi tạm dừng
Button btstart = (Button)findViewById(R.id.btstart);
btstart.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
count = new CountDownTimer(8000,100) { 
// tổng thởi gian là 8000, thời gian mỗi lần đếm là 100 : các bạn thay đổi  tùy ứng dụng nha
@Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub
index++;
tvshow.setText(""+index+" %");               
}
@Override
public void onFinish() {
// TODO Auto-generated method stub
tvshow.setText("OK done !");
}
};
    count.start();
}
});
 // tạm dừng đếm
Button btstop = (Button)findViewById(R.id.btstop);
btstop.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
count.cancel();
}
});
}

}


Kết quả ứng dụng :





chúc các bạn thành công .
Mọi thắc mắc các bạn liên hệ mình qua địa chỉ Gmail : svk10acntt@gmail.com hoặc Fb: John Ly Phạm




0 comments:

Post a Comment

http://knlaptrinhandroid.blogspot.com/

 
Top