使用 Picasso 将 class 加载到 val 中

Load class into val with Picasso

我想从 class 中加载一个字符串,以便用 picasso

加载它
val pic = String
    Picasso.get().load(User1::profileImageUrl).into(pic)

但是 "load" 下面有一条红线,它不起作用。 在这里你可以看到我的 class

    class User1(val uid: String, val username: String, val profileImageUrl: String)

所以稍后我想像这样使用带有滑行的字符串

Glide.with(applicationContext).load(personPhotoUrl)
                    .thumbnail(0.3f)
                    .apply(RequestOptions.circleCropTransform())
                    .into(profilepicture!!)

有什么想法吗?

我不熟悉 Picasso,但是从 javadoc 加载方法需要字符串、Uri、文件或资源 ID。您在 属性 上传递了某种反射引用(如果这种构造完全有意义的话)。

如果你想创建一次图片,你应该使用一个用户实例:

val user : User1 = getUserSomewhere()
Picasso.get().load(user1.profileImageUrl).into(pic)

或者你可以做一个方法:

fun loadUserProfileImage(user: User1, target: ImageView) {
    Picasso.get().load(user1.profileImageUrl).into(target)
}

同样在红线下方告诉您有错误,并且有错误信息。)

还有这个:val pic = String 是不正确的,至少在你的情况下是这样。这里的图片是 StringCompanionObject.

类型