0% found this document useful (0 votes)
158 views6 pages

Android Studio Countdown Timer Guide

The document describes an Android app that counts down from 10 minutes. It includes code for the MainActivity class and activity_main layout file. The app displays a countdown timer, and has buttons to start, pause, and reset the timer. When testing the app, the timer is shown to work correctly and the buttons control the timer as expected.

Uploaded by

Al Hadad123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
158 views6 pages

Android Studio Countdown Timer Guide

The document describes an Android app that counts down from 10 minutes. It includes code for the MainActivity class and activity_main layout file. The app displays a countdown timer, and has buttons to start, pause, and reset the timer. When testing the app, the timer is shown to work correctly and the buttons control the timer as expected.

Uploaded by

Al Hadad123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

LAPORAN SEMENTARA

MODUL 3
PROGRAM TIMER ANDROID STUDIO
“APLIKASI TIMER COUNT DOWN”

NAMA : Priyo Budi Anggono

NIM : 40040318650030

1. MainActivity.java
Script Code MainActivity.java :

package com.example.priyopraktikum3;

import android.os.Bundle;

import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.snackbar.Snackbar;

import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;

import android.view.View;

import android.view.Menu;
import android.view.MenuItem;

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

import java.util.Locale;

public class MainActivity extends AppCompatActivity {


private static final long START_TIME_IN_MILLIS = 600000;
private TextView DisplayCountDown;
private Button TombolStart;
private Button TombolReset;
private android.os.CountDownTimer CountDownTimer;
private boolean TimerRunning;
private long TimeLeftInMillis = START_TIME_IN_MILLIS;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DisplayCountDown = findViewById(R.id.display);
TombolStart = findViewById(R.id.btnstart);
TombolReset = findViewById(R.id.btnreset);
TombolStart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (TimerRunning) {
pauseTimer();
} else {
startTimer();
}
}
});

TombolReset.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
resetTimer();
}
});
updateCountDownText();
}

private void startTimer() {


CountDownTimer = new CountDownTimer(TimeLeftInMillis, 1000) {
@Override
public void onTick(long millisUntilFinished) {
TimeLeftInMillis = millisUntilFinished;
updateCountDownText();
}

@Override
public void onFinish() { TimerRunning = false;
TombolStart.setText("Start");
TombolStart.setVisibility(View.INVISIBLE);
TombolReset.setVisibility(View.VISIBLE);
}
}.start(); TimerRunning = true;
TombolStart.setText("pause");
TombolReset.setVisibility(View.INVISIBLE);
}

private void pauseTimer() {


CountDownTimer.cancel();
TimerRunning = false;
TombolStart.setText("Start");
TombolReset.setVisibility(View.VISIBLE);
}

private void resetTimer() {


TimeLeftInMillis = START_TIME_IN_MILLIS;
updateCountDownText();
TombolReset.setVisibility(View.INVISIBLE);
TombolReset.setVisibility(View.VISIBLE);
}
private void updateCountDownText() {
int minutes = (int) (TimeLeftInMillis / 1000) / 60;
int seconds = (int) (TimeLeftInMillis / 1000) % 60;
String timeLeftFormatted = String.format(Locale.getDefault(), "%02d:%02d",
minutes, seconds);
DisplayCountDown.setText(timeLeftFormatted);
}
}
2. activity_main.xml
Design dan Script Code activity_main.xlm :

<?xml version="1.0" encoding="utf-8"?>


<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<Button android:id="@+id/btnstart"
android:layout_width="88dp"
android:layout_height="48dp"
android:layout_marginStart="161dp"
android:layout_marginTop="69dp"
android:layout_marginEnd="162dp"
android:layout_marginBottom="37dp"
android:text="Start"
app:layout_constraintBottom_toTopOf="@+id/btreset"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/display"
android:layout_marginLeft="161dp"
android:layout_marginRight="162dp"
tools:ignore="UnknownId" />

<Button
android:id="@+id/btnreset"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_marginStart="161dp"
android:layout_marginTop="32dp"
android:layout_marginEnd="162dp"
android:layout_marginBottom="64dp"
android:text="Reset"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/btnstart"
android:layout_marginRight="162dp"
android:layout_marginLeft="161dp" />

<TextView android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginTop="32dp"
android:text="Program Timer Count Down"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:textSize="20sp"/>

<TextView
android:id="@+id/display"
android:layout_width="157dp"
android:layout_height="80dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_marginStart="176dp"
android:layout_marginTop="291dp"
android:layout_marginEnd="176dp"
android:layout_marginBottom="57dp"
android:text="00:00"
android:textColor="@color/black"
android:textSize="60sp"
app:layout_constraintBottom_toTopOf="@+id/btnstart"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView2" />

</androidx.constraintlayout.widget.ConstraintLayout>
3. Hasil Simulasi

Tampilan Awal Tampilan Ketika Start

Tampilan Ketika Pause Tampilan Ketika Reset


Ulasan :

1. Dalam praktikum Modul 3 ini menggunakan template yang telah tersedia di Android
Studio, yaitu Empty Activity. Dengan template itu, kita dapat menambah design dan
code sesuka kita. Dalam membuat aplikasi Timer Count Down, hanya membutuhkan
Text View dan Button. Text View berguna untuk menampilkan angka Timer pada
aplikasi, dan Button untuk mengoperasikan nya.
2. MainActivity.java digunakan untuk memberi inputan dan menjalankan variable
(display timer, button start, dan button reset) yang akan gunakan pada program aplikasi
Timer Count down.
3. Activity_main.xml digunakan Untuk mengedit dengan mengatur ukuran, mengubah
posisi, dan memberi nama pada teks “Program Timer Countdown”, display timer,
tombol “START” yang apabila tombol diklik maka TIMER akan berjalan dan tombol
“RESET” apabila tombol diklik maka TIMER akan mereset hasil pause seperti semula.

Kesimpulan :

Kesimpulan yang dapat diambil dari Modul 3 tentang percobaan Aplikasi Timer Count Down,
yaitu :

1. MainActivity.java digunakan untuk memberi inputan dan menjalankan variable


(display timer, button start, dan button reset) yang akan gunakan pada program aplikasi
Timer Count down.
2. Activity_main.xml digunakan Untuk mengedit dengan mengatur ukuran, mengubah
posisi, dan memberi nama pada teks “Program Timer Countdown”, display timer,
tombol “START” yang apabila tombol diklik maka TIMER akan berjalan dan tombol
“RESET” apabila tombol diklik maka TIMER akan mereset hasil pause seperti semula.

You might also like