美文网首页
ImageView 使用app:srcCompat设置图片不显示

ImageView 使用app:srcCompat设置图片不显示

作者: 关阝 | 来源:发表于2020-07-14 15:27 被阅读0次

    使用Android studio拖拽布局拖拽ImageView的时候自动生成了app:srcCompat这个属性来设置ImageView的图片源,之前使用的时候都是没有问题的。今天用include加载一个都是ImageView的layout的时候,预览都是没有问题的,在真机上include的布局就不显示了。一直以为是include的问题,各种找include的用法还是解决不了,直到在layout上加了一个TextView可以正常显示,才发觉不是include的问题,我ImageView使用的不是android:src来加载图片而是用app:srcCompat。
    查了一下两个属性的区别

    app:srcCompat

    是将矢量绘图集成到app中最简单的方法。矢量绘图允许您使用XML定义的单个矢量图形替换多个png资源。虽然以前仅限于棒棒糖和更高的设备

    注意

    Android支持库23.3.0开始支持向量drawable只能通过加载app:srcCompat

    您需要将vectorDrawables.useSupportLibrary = true添加到您的build.gradle文件中

     // Gradle Plugin 2.0+  
     android {  
       defaultConfig {  
         vectorDrawables.useSupportLibrary = true  
        }  
     }
    

    android:src

    将drawable设置为此ImageView的内容。它将以其原始大小显示。没有自动缩放。

    还有就是当Activity如果是继承AppcompatActivity的时候使用ImageView的app:srcCompat属性来设置图片源是没问题的
    当Activity吐过不是继承AppcompatActivity的时候使用ImageView的app:srcCompat的属性来设置图片源是无法显示的,需要使用android.support.v7.widget.AppCompatImageView来代替ImageView或者让Activity继承AppcompatActivity。
    若果无法修改Activity的继承或者不想用android.support.v7.widget.AppCompatImageView来代替那就老实的用android:src吧

    相关文章

      网友评论

          本文标题:ImageView 使用app:srcCompat设置图片不显示

          本文链接:https://www.haomeiwen.com/subject/otffhktx.html