Description
Description:
I want to use those components in my app but I notice some really unusual loading speed for the initial load after the app is cold started. It takes up to three seconds for the pickers to show up after they are requested.
That behaviour happens when I start the application from Android Studio on my phone or in the emulator. When I use the Sample App for the Material Components from the PlayStore it's behaving normally (so no opening delay). I'm actually kinda clueless what the reasoning might be.
Consecutive clicks are faster.
Expected behavior:
The Pickers should show up nearly instantaneously.
Source code:
This screencapture is from a minimal application that consists just of one Activity:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
findViewById<Button>(R.id.datePicker).setOnClickListener {
MaterialDatePicker.Builder.datePicker().build().show(supportFragmentManager, "DATE_PICKER")
}
findViewById<Button>(R.id.timePicker).setOnClickListener {
MaterialTimePicker.Builder().build().show(supportFragmentManager, "DATE_PICKER")
}
}
}
The layout just contains the two buttons:
<?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/datePicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Open Date Picker"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.33" />
<Button
android:id="@+id/timePicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Open Time Picker"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/datePicker" />
</androidx.constraintlayout.widget.ConstraintLayout>
Android API version: 10
Material Library version: 1.3.0-alpha04
Device: OnePlus 6T & Emulator in Android Studio