web-dev-qa-db-ja.com

レイアウトの右側と下部に影を付ける

レイアウトの右側と下側に明るい影を付けたいです。Android:background="@Android:drawable/dialog_holo_light_frame"ですが、レイアウトの4辺すべてに濃い影が追加されます。背景として作成および設定する必要のあるドローアブルは何ですか?

<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>
14
user4738063

これで問題が解決するかもしれません

 <?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レイアウトに適用しますLinearLayoutAndroid:background="@drawable/drawable_name"

16
N J

これは私が言及したものであり、うまくいきました。

** 1.灰色のプレーンなLinearLayoutを追加し、その上に実際のレイアウトを追加します。下と右のマージンは1または2 dpです。

2.影付きの9パッチ画像を用意し、線形レイアウトの背景として設定します**

他のソリューションはこちら

1
Prabhuraj

Android:hardwareAccelerated="true"をマニフェストアプリケーションに追加します。

0