【发布时间】:2017-02-10 17:18:35
【问题描述】:
我想实现一个看起来像“所需”图像的布局,作为通知用户一些基本操作的初始应用状态的一部分。现在我得到了“实际”图像。
我需要任何可绘制/图像的背景图像,该图像具有从左下角到右上角倾斜的叠加层,并且具有任何颜色。这还必须在任何数量的设备、手机或平板电脑上以相同的形状进行扩展,并支持回 SDK 16。
到目前为止,我一直没有使用矢量图像创建倾斜可绘制对象,然后使用FrameLayout 将其覆盖在背景图像之上以获得分层效果。我不确定这是否是实现此目的的最佳方式,但我希望覆盖可绘制为矢量可绘制或九个补丁,这样它就不会在更宽的布局上像素化。
layout/view_layout.xml
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/background_image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@drawable/bg_image"/>
<View
android:layout_width="match_parent"
android:layout_height="52dp"
android:layout_gravity="bottom"
android:background="@drawable/overlay"/>
</FrameLayout>
drawable/overlay.xml
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="48dp" android:height="36dp"
android:viewportWidth="48" android:viewportHeight="36">
<path
android:fillColor="#fff"
android:pathData="M48,0 L48,36 L0,36 L0,32 Z"/>
</vector>
如果有人知道如何向矢量可绘制对象添加阴影(我一直无法找到方法),或者如果有更好的方法,任何帮助或建议将不胜感激。谢谢!
【问题讨论】:
-
我认为您需要创建一个像这样但圆形(圆形)的图层 -- stackoverflow.com/questions/26356060/…
-
@Tasos 这不是我想要的。似乎所选答案仅使用矩形形状,由于倾斜的工作方式,阴影需要跟随整个倾斜而不会被分离。我也不认为创建附加三个视图是我更愿意做的事情。不过感谢您的建议!
标签: android android-vectordrawable