Как не загружать Glide дважды при повороте экрана?
Помогите, пожалуйста. Как не загружать Glide дважды при повороте экрана используя viewModel? Использовал LiveData, но что-то не получилось) В фрагмент у меня прилетает url, используя который я загружаю картинку. Спасибо за ответы!
class CatInfoFragment : Fragment() {
private var url: String? = null
private var _binding: CatInfoBinding? = null
private val binding get() = _binding!!
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
url = arguments?.getString(URL)
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val catInfoImageView: ImageView = binding.imageView
saveButton = binding.floatingActionButton
Glide.with(requireActivity())
.load(url)
.placeholder(R.drawable.ic_cat_empty)
.into(catInfoImageView)
Ответы (1 шт):
Автор решения: Danil Apsadikov
→ Ссылка
При повороте экрана View уничтожается и создается заново, если ты не хочешь загружать картинку из сети два раза, то настрой кэширование
Glide.with(fragment)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(imageView);