【问题标题】:Glide not showing image to CircleImageView KotlinGlide 不向 CircleImageView Kotlin 显示图像
【发布时间】:2020-07-06 19:55:02
【问题描述】:

我正在使用 glide 将图像加载到 CircleImageView。但是图像没有显示。我正在使用列表适配器类。

class ListAdapter (private val myDataset: MutableList<Aplaca>):
    RecyclerView.Adapter<ListAdapter.MyViewHolder>() {

    class MyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView){
        val name = itemView.name
        val pic = itemView.pic
......

    override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
        val current = myDataset.get(position)
        holder.name.setText(current.getMyName())
        val imgTxt = current.getImg()
        Glide.with(holder.pic.context).load(imgTxt).into(holder.pic)
    }

我也试过.apply(RequestOptions.circleCropTransform())

这是我的 CircleImageView 代码:

        <de.hdodenhof.circleimageview.CircleImageView
            android:id="@+id/pic"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop"
            app:civ_border_color="#FF000000"
            app:civ_border_width="2dp" />

是的,我有互联网许可。

【问题讨论】:

  • 什么是imgTxt?是网址吗?

标签: android kotlin imageview android-glide


【解决方案1】:

首先,尝试在不滑动的情况下设置图像,如果有效,尝试在不滑动和滑动的情况下将图像设置为正常的图像视图,否则如果这两种方法有效,我不知道

【讨论】:

    【解决方案2】:

    尝试使用

    1. 在 XML 中使用普通 imageView 而不是 CircleImageView。
    2. 使用属性 RoundedCorners(180) 将使其变为圆形。

    试用代码

    override fun onBindViewHolder(holder: YelpViewHolder, position: Int) {
        val current = myDataset.get(position)
        holder.name.setText(current.getMyName())
        val imgTxt = current.getImg()
        Glide.with(context).load(imgTxt).apply(RequestOptions()
        .transform(CenterCrop(),RoundedCorners(180))).into(holder.pic)
    }
    

    【讨论】:

      猜你喜欢
      • 2020-06-07
      • 2020-11-20
      • 2018-10-29
      • 1970-01-01
      • 1970-01-01
      • 2017-10-11
      • 2019-03-09
      • 1970-01-01
      • 2020-04-25
      相关资源
      最近更新 更多