Я учусь использовать фрагменты в Android, и я использую один для отображения изображения, которое загружается с URL-адреса, поэтому мне нужен индикатор выполнения. Однако после запуска приложения индикатор выполнения не отображается до отображения изображения.
Это мой xml для фрагмента:
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/firstFragmentImageView"
android:scaleType="centerCrop"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<android.support.v4.widget.ContentLoadingProgressBar
android:id="@+id/firstFragmentProgressBar"
android:visibility="visible"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content" /></FrameLayout>
и это функция, в которой я делаю видимым индикатор загрузки во время загрузки изображения:
private fun loadImageUsingGlide(){
firstFragmentProgressBar.visibility = View.VISIBLE
Glide.with(this).asBitmap()
.load(Uri.parse(imageUrl))
.into(object : BitmapImageViewTarget(firstFragmentImageView){
override fun onResourceReady(resource: Bitmap, transition: Transition<in Bitmap>?) {
super.onResourceReady(resource, transition)
firstFragmentProgressBar.visibility = View.INVISIBLE
}
})
}