微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android Widget 使用 app:srcCompat for ImageView

如何解决Android Widget 使用 app:srcCompat for ImageView

我有带 ImageView 的小部件。当我使用 android:srcImageView 设置图像时,一切正常,但是当我使用 app:srcCompat 时,图像不显示。 有没有办法在 Android Widget 中使用 app:srcCompat?

它已在我的项目中设置:

xmlns:app="http://schemas.android.com/apk/res-auto"

android {  
 defaultConfig {  
    vectorDrawables.useSupportLibrary = true  
    }
}


  minSdkVersion 24
  targetSdkVersion 29

解决方法

如果<androidx.appcompat.widget.AppCompatImageView>

,请尝试<ImageView> ,

我认为这是不可能的。 ImageView 实际上没有 app:srcCompat 属性(请参阅 here)。 您通常能够使用它的原因是,当您使用 appcompat 库时,ImageView 会自动替换为 AppCompatImageView。但是,这不适用于小部件,因为它们基于 RemoteViews。如您所见,对于 RemoteViews,您只能使用 ImageView 而不能使用 AppCompatImageView。即使您将 appcompat 库添加到您自己的应用程序中,问题在于您的小部件的 RemoteViews 对象将被交给将显示小部件的应用程序进程(通常是启动器),我们不能假设 appcompat 为可用。

您是否因为矢量资源问题而尝试使用 appcompat?如果您描述了您遇到的问题,也许我们可以找到一种方法使其与常规 ImageView 一起使用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。