繁体   English   中英

在布局的右侧和底部添加阴影

[英]Add shadow on right and bottom side of the layout

我想在布局的右侧和底部添加一个光影。我尝试使用android:background="@android:drawable/dialog_holo_light_frame"但它在布局的所有四边都添加了一个厚阴影。我需要什么可绘制的创建和设置为背景?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@android:drawable/dialog_holo_light_frame">
       <ImageView
                android:id="@+id/g"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:scaleType="centerCrop"
                android:layout_gravity="center"
                android:src="@drawable/logo_icon"
                android:visibility="visible"
                android:clickable="true" />
</LinearLayout>

我认为这可以解决你的问题

 <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
            <shape>
                <padding android:bottom="2dp" android:left="0dp" android:right="2dp"
                         android:top="0dp"/>
                <solid android:color="#00CCCCCC"/>
            </shape>
        </item>
        <item>
            <shape>
                <padding android:bottom="2dp" android:left="0dp" android:right="2dp"
                         android:top="0dp"/>
                <solid android:color="#10CCCCCC"/>
            </shape>
        </item>
        <item>
            <shape>
                <padding android:bottom="2dp" android:left="0dp" android:right="2dp"
                         android:top="0dp"/>
                <solid android:color="#20CCCCCC"/>
            </shape>
        </item>
        <item>
            <shape>
                <padding android:bottom="2dp" android:left="0dp" android:right="2dp"
                         android:top="0dp"/>
                <solid android:color="#30CCCCCC"/>
            </shape>
        </item>
        <item>
            <shape>
                <padding android:bottom="1dp" android:left="1dp" android:right="1dp" android:top="1dp"/>
                <solid android:color="#50CCCCCC"/>
            </shape>
        </item>

        <!-- Background -->
        <item>
            <shape>
                <solid android:color="@color/white"/>
                <corners android:radius="3dp"/>
            </shape>
        </item>
    </layer-list>

然后将其应用于XML布局作为背景LinearLayout android:background="@drawable/drawable_name"

这是我提到的,它的工作原理。

** 1.添加一个灰色的普通LinearLayout,在其上添加您的实际布局,底部和右侧的边距等于1或2 dp

2.带有阴影的9补丁图像,并将其设置为线性布局的背景**

其他解决方案

只需将android:hardwareAccelerated="true"放入您的Manifest应用程序即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM