Cara Membuat Aplikasi Stopwatch di Android – Stopwatch adalah salah satu fitur dasar yang sering digunakan dalam aplikasi Android, baik untuk keperluan olahraga, produktivitas, atau sekadar pengukuran waktu. Dalam artikel ini, kita akan membahas cara membuat aplikasi stopwatch sederhana di Android menggunakan bahasa pemrograman Kotlin dan framework Android Studio.
Persiapan Awal
Sebelum mulai membuat aplikasi stopwatch, pastikan Anda telah menginstal:
- Android Studio (versi terbaru)
- JDK (Java Development Kit)
- Emulator atau perangkat fisik untuk pengujian
Setelah semuanya siap, buat proyek baru di Android Studio dengan langkah-langkah berikut:
- Buka Android Studio dan pilih Start a new Android Studio project.
- Pilih template Empty Activity dan klik Next.
- Masukkan nama proyek, misalnya “StopwatchApp”.
- Pilih bahasa pemrograman Kotlin dan atur Minimum API Level sesuai kebutuhan.
- Klik Finish untuk membuat proyek.
Mendesain Tampilan UI Stopwatch
Untuk mendesain tampilan stopwatch, buka file activity_main.xml
dan tambahkan elemen-elemen berikut:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:padding="20dp">
<TextView
android:id="@+id/tvTimer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00:00:00"
android:textSize="48sp"
android:textStyle="bold"/>
<Button
android:id="@+id/btnStart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Start"/>
<Button
android:id="@+id/btnPause"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pause"/>
<Button
android:id="@+id/btnReset"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Reset"/>
</LinearLayout>
Kode di atas mendesain antarmuka sederhana dengan tampilan timer dan tiga tombol utama: Start, Pause, dan Reset.
Menambahkan Fungsionalitas Stopwatch
Sekarang, kita akan mengimplementasikan logika stopwatch menggunakan Handler
dan Runnable
. Buka file MainActivity.kt
dan tambahkan kode berikut:
package com.example.stopwatchapp
import android.os.Bundle
import android.os.Handler
import android.widget.Button
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
private lateinit var tvTimer: TextView
private lateinit var btnStart: Button
private lateinit var btnPause: Button
private lateinit var btnReset: Button
private var isRunning = false
private var elapsedTime: Long = 0
private val handler = Handler()
private lateinit var runnable: Runnable
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
tvTimer = findViewById(R.id.tvTimer)
btnStart = findViewById(R.id.btnStart)
btnPause = findViewById(R.id.btnPause)
btnReset = findViewById(R.id.btnReset)
runnable = object : Runnable {
override fun run() {
elapsedTime++
val seconds = (elapsedTime % 60).toInt()
val minutes = (elapsedTime / 60 % 60).toInt()
val hours = (elapsedTime / 3600).toInt()
tvTimer.text = String.format("%02d:%02d:%02d", hours, minutes, seconds)
handler.postDelayed(this, 1000)
}
}
btnStart.setOnClickListener {
if (!isRunning) {
handler.post(runnable)
isRunning = true
}
}
btnPause.setOnClickListener {
if (isRunning) {
handler.removeCallbacks(runnable)
isRunning = false
}
}
btnReset.setOnClickListener {
handler.removeCallbacks(runnable)
isRunning = false
elapsedTime = 0
tvTimer.text = "00:00:00"
}
}
}
Penjelasan Kode
- Variabel
elapsedTime
menyimpan jumlah detik yang telah berlalu. - Runnable
runnable
diperbarui setiap detik untuk menghitung waktu yang berlalu. - Handler
handler
digunakan untuk mengatur jeda waktu eksekusi. - Tombol Start: Memulai stopwatch jika belum berjalan.
- Tombol Pause: Menghentikan stopwatch sementara.
- Tombol Reset: Menghentikan stopwatch dan mengembalikan timer ke nol.
Pengujian Aplikasi
Setelah kode selesai ditulis, jalankan aplikasi dengan langkah berikut:
- Klik Run (ikon segitiga hijau di Android Studio).
- Pilih emulator atau perangkat fisik.
- Uji aplikasi dengan menekan tombol Start, Pause, dan Reset.
Kesimpulan
Dalam tutorial ini, kita telah membuat aplikasi stopwatch sederhana di Android menggunakan Kotlin. Dengan memanfaatkan Handler
dan Runnable
, kita dapat mengontrol waktu dengan presisi. Anda dapat mengembangkan aplikasi ini lebih lanjut dengan menambahkan fitur seperti lap timer atau menyimpan riwayat waktu.
Semoga tutorial ini bermanfaat! Jika Anda ingin meningkatkan desain UI atau menambahkan fitur lain, jangan ragu untuk bereksperimen lebih lanjut. Selamat coding!