一些图标未在某些android设备中显示

时间:2019-06-14 11:35:23

标签: android xml imageview icons

我正在使用正常方式在android的ImageView中设置矢量图标。在某些设备中,图标不可见,空白在那里,不知道为什么发生。这仅在android pie设备中发生

这些是我用来设置图标的一些代码。图标可以完美地显示在调试设备中,但是发布后某些设备会出现问题。

<LinearLayout 
 android:layout_width="match_parent"
  android:padding="5sp"
  android:gravity="center"
  android:id="@+id/home_dr"
  android:layout_marginBottom="5sp"
  android:orientation="horizontal"
  android:layout_height="50sp">

<ImageView android:layout_width="50sp"
   android:padding="13sp"
   android:gravity="center"
   android:tint="@color/white"
   android:src="@drawable/ic_home"
   android:layout_height="50sp"/>

<TextView 
  android:layout_width="match_parent"
  android:layout_marginStart="10sp"
  android:text="Home"
  android:textColor="@color/white"
  android:textStyle="bold"
  android:gravity="center|start"
  android:layout_height="match_parent"/>
</LinearLayout>

兔子是您可以很好理解的一些图像

2 个答案:

答案 0 :(得分:2)

将此添加到您的应用buil.gradle和defaultConfig标签内:

vectorDrawables.useSupportLibrary = true

,然后将AppCompatImageViewapp:srcCompat一起使用。像这样:

            <android.support.v7.widget.AppCompatImageView
           android:layout_width="50sp"
                   android:padding="13sp"
                   android:gravity="center"
                   android:tint="@color/white"
                   app:srcCompat="@drawable/ic_home"
                   android:layout_height="50sp" />

答案 1 :(得分:1)

如果是矢量图标,则假设将其设置为srcCompact而不是图像视图中的src。

app:srcCompat="@drawable/your_vector_name"

并在build.gradle中,检查是否已启用vector drawable。

android {
defaultConfig {
    vectorDrawables.useSupportLibrary = true
}
}

对于API级别21支持,请将其添加到活动AppCompatDelegate.setCompatVectorFromResourcesEnabled(true);中。