gpt4 book ai didi

android - 没有透明度的投影渲染

转载 作者:太空狗 更新时间:2023-10-29 15:00:32 25 4
gpt4 key购买 nike

this project (feature/drop-shadow 分支)我正在尝试在 View 容器上方添加一个投影。因此,我定义了以下形状 ( drawable/shadow_above ):

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#20000000"
android:endColor="@android:color/transparent"
android:angle="90">
</gradient>
</shape>

然后在布局文件 (container_infos.xml) 中使用如下:

<View
android:background="@drawable/shadow_above"
android:layout_width="match_parent"
android:layout_height="4dp"/>

截图显示了结果。出于某种原因,阴影看起来很糟糕。没有不透明。我究竟做错了什么?欢迎向我的开源项目发送拉取请求。

Awful drop shadow


使用 RelativeLayout 的解决方案

我设法通过在 fragment_map.xml 中使用 RelativeLayout 获得了期望的结果:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".ui.MainActivity">

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">

<FrameLayout
android:id="@+id/map_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:background="@android:color/holo_purple"/>

<View
android:background="@drawable/shadow_above"
android:layout_alignBottom="@id/map_container"
android:layout_width="match_parent"
android:layout_height="4dp"/>

</RelativeLayout>

<include
layout="@layout/container_infos"/>

</LinearLayout>

可能还有优化的空间。

最佳答案

据我所知,你应该给 map_container_infos_layout 一个 4dp 大小的负上边距,它应该看起来更好

关于android - 没有透明度的投影渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27343315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com