STEP 2 : ADD FOLLOWING CODE IN XML AND KOTLIN ACTIVITY.
XML CODE :
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.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="vishalpatil.techhindi.countdowntimer.MainActivity">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="CountDown Timer "
android:textAlignment="center"
android:textSize="60dp"
/>
<Button
android:id="@+id/start"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_marginStart="8dp"
android:background="#55ff00"
android:text="Start Timer"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"></Button>
<Button
android:id="@+id/stop"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_marginEnd="8dp"
android:background="#ff0000"
android:text="Stop Timer"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"></Button>
<TextView
android:id="@+id/tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="220dp"
android:text=""
android:textAlignment="center"
android:textColor="#ff4000"
android:textSize="50dp"
app:layout_constraintBottom_toBottomOf="parent"
tools:layout_editor_absoluteX="0dp" />
</android.support.constraint.ConstraintLayout>
KOTLIN CODE :
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.os.CountDownTimer
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val timer = MyCounter(10000, 1000)
start.setOnClickListener { timer.start() }
stop.setOnClickListener { timer.cancel() }
}
inner class MyCounter(millisInFuture: Long, countDownInterval: Long) : CountDownTimer(millisInFuture, countDownInterval) {
override fun onFinish() {
println("Timer Completed.")
tv.text = "Timer Completed."
}
override fun onTick(millisUntilFinished: Long) {
tv.textSize = 50f
tv.text = (millisUntilFinished / 1000).toString() + ""
println("Timer : " + millisUntilFinished / 1000)
}
}
}
Done . Run App