当我想将存储中的大尺寸照片放入小 ImageView 时遇到了问题。我想知道如何在不降低应用程序速度或崩溃的情况下将这些类型的照片放入一个小的 imageViews 中。 我有一个 RecyclerView,它在列表中显示存储中的一些图片。这是我的回收适配器代码。 感谢您的帮助。
class Adapter(files: ArrayList<File>):RecyclerView.Adapter<Adapter.myViewHolder>() {
val files: ArrayList<File> = files
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): myViewHolder {
val view = LayoutInflater.from(parent.context).inflate(R.layout.item_complex_note_view , parent , false)
return myViewHolder(view)
}
override fun getItemCount(): Int {
return files.size
}
override fun onBindViewHolder(holder: myViewHolder, position: Int) {
holder.bind(files.get(position))
}
class myViewHolder(itemView: View):RecyclerView.ViewHolder(itemView){
lateinit var imageView: ImageView
init {
imageView = itemView.findViewById(R.id.complex_note_view_item_imageview)
}
fun bind(file: File) {
imageView.setImageURI(file.toUri())
}
}
}
最佳答案
更好的方法是使用这段代码:
Glide.with(imageView.context)
.load(imageFile)
.apply(RequestOptions().centerCrop())
.into(imageView)
Glide 类更快、更优化。
关于java - 在不降低应用程序速度或崩溃的情况下将大尺寸照片放入小 ImageView 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57911585/