Android Studio设计界面显示的图片在模拟器运行时消失的原因咨询
以下是几种常见的原因及排查方向:
Vector Drawable兼容配置缺失
你使用app:srcCompat加载@drawable/iconpetit2929,如果该资源是矢量图(Vector Drawable),需确保Module级别的build.gradle中配置了:android { defaultConfig { vectorDrawables.useSupportLibrary = true } }同时依赖
androidx.appcompat:appcompat库,否则低版本模拟器无法正确渲染矢量图。资源目录放置错误
确认iconpetit2929是否放在通用的drawable目录下,若误放在drawable-anydpi-v24这类高版本专属目录,低版本模拟器会找不到该资源。布局约束缺失
你的根布局是CoordinatorLayout,但ImageView未设置布局定位属性(如android:layout_gravity),仅设置android:gravity是控制图片在ImageView内部的对齐方式,并非视图本身在父容器中的位置。模拟器中可能因布局规则导致视图被挤出屏幕或未被正确布局,可添加android:layout_gravity="start|center_vertical"来指定ImageView在父容器中的位置。资源本身存在问题
检查图片文件名是否符合Android规范(无大写字母、特殊字符),格式是否为Android支持的类型(如PNG、JPG、Vector XML)。若使用WebP格式,需确认模拟器系统版本支持静态WebP(Android 4.0+)或动态WebP(Android 4.2.1+)。编译缓存异常
Android Studio的缓存可能导致资源未正确编译进APK,可通过File -> Invalidate Caches... -> Invalidate and Restart清理缓存后重新编译运行。
内容的提问来源于stack exchange,提问作者stefcoder

