【问题标题】:Is is possible to add property to ImageView using extensions to load image via url?是否可以使用扩展将属性添加到 ImageView 以通过 url 加载图像?
【发布时间】:2021-06-18 03:22:31
【问题描述】:

我创建了一个扩展函数,它使用 Glide 从 URL 下载图像并将其加载到 ImageView

fun ImageView.loadImageFromUrl(url: String) {
    Glide.with(this)
            .load(url)
            .into(this)
}

我想做的是将属性loadImageFromUrl 添加到ImageView 并为其分配URL。

imageView.loadImageFromUrl = "https://sample-url.com/image"

我知道这可以使用来自DataBindingBindingAdapter 来完成。不使用DataBinding可以实现这个功能吗?

【问题讨论】:

  • Myclass 扩展 Yourclass;
  • 这是唯一的方法吗?使用继承?可以使用运算符重载吗?
  • 哪个运算符?
  • 设置?我是新手,所以如果这没有意义,请指出。
  • 我不知道你在说什么。

标签: android kotlin data-binding kotlin-android-extensions


【解决方案1】:

从我的角度来看,这是一个非常奇怪的 api,但如果你真的想要它,你可以写:

var ImageView.loadImageFromUrl: String
    get() = ""
    set(value) {
        loadImageFromUrl(value)
    }

【讨论】:

  • 我明白这不是一种正常的方式,但这正是我想学习的。谢谢!
猜你喜欢
  • 1970-01-01
  • 2020-10-02
  • 1970-01-01
  • 2011-05-23
  • 2010-09-16
  • 2015-07-06
  • 1970-01-01
  • 2018-05-08
  • 2021-01-06
相关资源
最近更新 更多