删除 ImageView 的阴影

Remove drop shadow of an ImageView

在 Android Studio 中,我将 ImageView 与不需要的阴影集成在一起,我似乎无法摆脱它。 如何使图片融入背景? 我尝试将按钮的背景设置为透明,但 android:shadowRadius="0" 没有用。

我的 .xml 文件

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:background="@color/colorWhiteText"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.constraint.Guideline
        android:id="@+id/guideline16"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.23" />

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:shadowRadius="0"
        app:layout_constraintBottom_toTopOf="@+id/guideline16"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@drawable/logo_174" />

</android.support.constraint.ConstraintLayout>

android:background="@color/colorWhiteText" 更改为 android:background="#ffffffff",因为这里的背景很重要。

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:background="#ffffffff"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

也许更好的形式是在 res\values\colors 中设置它。xml:

<color name="windowBackground">#FFFFFFFF</color>

并使用:

android:background="@color/windowBackground"

为我测试 ok(无投影),依赖项:

implementation 'com.android.support.constraint:constraint-layout:1.0.2'

我刚刚找到了我对这个问题的愚蠢解决方案。确保图片本身没有阴影,但事实并非如此。我确信我得到了我想要的图片,但不知何故在这个过程中创建了一个阴影。

1:您可以检查其设置的值

  android:background="@color/colorWhiteText"

2:如果您的图片是 PNG 格式,请尝试使用以下

 android:src="@drawable/logo_174"

3:如果图片是矢量图。 SrcCompact 用于小于 API 级别 21

的设备的矢量图像支持
 android {  
   defaultConfig {  
     vectorDrawables.useSupportLibrary = true  
    }  
 }  

注意:您分享的代码在我尝试时没有给出任何阴影。