【问题标题】:Loading an image URL into a Kotlin AppWidget using Glide使用 Glide 将图像 URL 加载到 Kotlin AppWidget
【发布时间】:2018-04-17 16:06:18
【问题描述】:

我在互联网上搜索了如何在 Kotlin 中加载远程图像的示例。有很多 Kotlin 示例将 Glide 与普通 ImageView 结合使用,但与 AppWidget 中的远程 ImageView 没有任何关系。

目前最好的资源在这里,但它是用 Java 编写的: https://futurestud.io/tutorials/glide-loading-images-innnto-notifications-and-appwidgets

我在下面添加了 Kotlin 翻译...

【问题讨论】:

    标签: 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 修复了问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-28
      • 2018-08-01
      • 2020-12-24
      • 1970-01-01
      相关资源
      最近更新 更多