【问题标题】:Loading an image URL into a Kotlin AppWidget using Glide使用 Glide 将图像 URL 加载到 Kotlin AppWidget
【发布时间】:2018-04-17 16:06:18
【问题描述】:
【问题讨论】:
标签:
android
kotlin
android-glide
【解决方案1】:
class DeviceIntelWidget : AppWidgetProvider() {
override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager?,
appWidgetIds: IntArray) {
...
val remoteViews = RemoteViews(context.packageName, R.layout.widget)
val awt: AppWidgetTarget = object : AppWidgetTarget(context.applicationContext, R.id.img, remoteViews, *appWidgetIds) {
override fun onResourceReady(resource: Bitmap, transition: Transition<in Bitmap>?) {
super.onResourceReady(resource, transition)
}
};
Glide.with(context.applicationContext).asBitmap().load("https://si.com/img.jpg").into(awt)
...
}
}
注意事项:
- AppWidgetTarget 用于通过 RemoteViews 在 AppWidget 的 ImageView 中显示下载的 Bitmaps
- 调用 load 以加载位图并在 onResourceReady 中进行任何后期处理
- 实现
'com.github.bumptech.glide:glide:4.2.0' 强制关闭NoClassDefFoundError: android.support.v4.util.ArrayMap
- 更新到最新:4.7.1 修复了问题