উদাহরণের আগে জানতে হবে কাউন্টডাউন টাইমার কী। এটি ঘড়ি ও মোবাইল ফোনের টাইমারের মতো সহজ। আমরা কাউন্টডাউন টাইম সেট করি, সময় শেষ হলে এটি বন্ধ হয়ে ০ দেখাবে।
কাউন্টডাউন টাইমার ব্যবহারের জন্য চারটি মেথড উপলব্ধ:
- onTick(long millisUntilFinished): কাউন্টডাউন মিলিসেকেন্ড পাস করতে হয়, কাউন্টডাউন শেষ হলে টিকিং বন্ধ হয়।
- onFinish(): টিকিং শেষ হলে যদি কোন মেথড বা কলব্যাক কল করতে চান, এখানে করতে পারেন।
- start(): কাউন্টডাউন টাইমার শুরু করতে ব্যবহৃত হয়।
- cancel(): কাউন্টডাউন টাইমার বাতিল করতে ব্যবহৃত হয়।
এই উদাহরণটি TextView-এর সাথে কাউন্টডাউন টাইমার ইন্টিগ্রেট করার পদ্ধতি দেখায়।
ধাপ ১: নতুন প্রজেক্ট তৈরি করুন
অ্যান্ড্রয়েড স্টুডিওতে File → New Project এ যান এবং প্রজেক্ট তৈরির জন্য প্রয়োজনীয় বিবরণ পূরণ করুন।
ধাপ ২: activity_main.xml-এ লেআউট যোগ করুন
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:id="@+id/layout"
android:gravity="center"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/counttime"
android:layout_width="match_parent"
android:gravity="center"
android:textSize="30sp"
android:layout_height="wrap_content" />
</LinearLayout>
এখানে একটি TextView ডিক্লেয়ার করা হয়েছে যা কাউন্টডাউন টাইমার প্রিন্ট করবে।
ধাপ ৩: MainActivity.java-এ কোড যোগ করুন
package com.example.andy.myapplication;
import android.annotation.TargetApi;
import android.os.Build;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
public int counter;
@TargetApi(Build.VERSION_CODES.O)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView counttime = findViewById(R.id.counttime);
new CountDownTimer(50000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
counttime.setText(String.valueOf(counter));
counter++;
}
@Override
public void onFinish() {
counttime.setText("Finished");
}
}.start();
}
}
এখানে ৫০ সেকেন্ড এবং টাইম ইন্টারভাল ১ সেকেন্ড ডিক্লেয়ার করা হয়েছে। TextView-এ ms টাইম প্রিন্ট হবে (onTick মেথড অনুযায়ী) এবং সময় শেষ হলে "Finished" প্রিন্ট হবে।
ধাপ ৪: Manifest.xml পরিবর্তন করার প্রয়োজন নেই
আউটপুট
টাইম কাউন্টিং পয়েন্ট দেখাচ্ছে:

৫০ সেকেন্ড শেষ হলে রেজাল্ট:
