Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何创建这样的可绘制xml_Android_Android Drawable_Layer List - Fatal编程技术网

Android 如何创建这样的可绘制xml

Android 如何创建这样的可绘制xml,android,android-drawable,layer-list,Android,Android Drawable,Layer List,我需要创建一个顶部有一个3dp高度线/矩形,底部有一个70%不透明度的黑色矩形和一个2dp高度线/矩形的可绘制图形。我该怎么做 以下是我正在使用的代码: <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:top="0dp" android:left="0dp" android:right="0dp"> <shape a

我需要创建一个顶部有一个3dp高度线/矩形,底部有一个70%不透明度的黑色矩形和一个2dp高度线/矩形的可绘制图形。我该怎么做

以下是我正在使用的代码:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:top="0dp" android:left="0dp" android:right="0dp">
        <shape android:shape="rectangle" >
            <size android:height="3dp"></size>
            <solid android:color="#C81F25"></solid>
        </shape>
    </item>
    <item android:top="2dp">
        <shape android:shape="rectangle">
            <solid android:color="#99000000"></solid>
        </shape>
    </item>

</layer-list>


PS:忽略图像周围的灰色渐变,它来自Android Studio预览。

是否可以使用线性布局构建不带绘图的布局。我不知道下面两个案例中的哪一个:

  • 在顶部布局上,有一个黑色字母掩码,其顶部和底部边距为2dp/3dp,嵌套在红色布局中

  • 在底部布局中,黑色alpha遮罩顶部有一个3dp高的矩形,alpha遮罩下方有一个2dp高的矩形

  • `

    
    `
    

    `

    
    `
    
    案例1:另一个矩形中的矩形

    案例2:3个矩形,其中2个是透明的,具有负填充和笔划。在eclipse预览中,案例2显示错误,但它是正确的,并且在部署时可以工作

    案例1: 可绘图文件夹中的actionbarbg.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
            <shape android:shape="rectangle">
                <solid android:color="#F00" />
            </shape>
        </item>
        <item android:top="3dp" android:right="0dp" android:bottom="2dp"
            android:left="0dp">
            <shape android:shape="rectangle">
                <solid android:color="#9000" />
            </shape>
        </item>
    </layer-list>
    
    
    
    案例2:(有点像黑客)

    
    
    这是ActionBar的背景。我不能将其用作自定义布局。那么,您指的是上面两种情况中的哪一种?我已经在下面给出了答案。你能接受我的回答吗。
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="3dp"
            android:background="#C81F25" >
        </LinearLayout>
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:background="#9000" >
    
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Content"
                android:textColor="@android:color/white" />
    
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Content"
                android:textColor="@android:color/white" />
    
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Content"
                android:textColor="@android:color/white" />
        </LinearLayout>
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:background="#C81F25" >
        </LinearLayout>
    </LinearLayout>`
    
    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
            <shape android:shape="rectangle">
                <solid android:color="#F00" />
            </shape>
        </item>
        <item android:top="3dp" android:right="0dp" android:bottom="2dp"
            android:left="0dp">
            <shape android:shape="rectangle">
                <solid android:color="#9000" />
            </shape>
        </item>
    </layer-list>
    
    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <item>
            <shape android:shape="rectangle" >
                <solid android:color="#9000" />
            </shape>
        </item>
        <item
            android:top="-2dp"
            android:left="-2dp"
            android:right="-2dp">
            <shape>
                <solid android:color="@android:color/transparent" />
    
                <stroke
                    android:width="2dp"
                    android:color="#C81F25" />
            </shape>
        </item>
        <item
            android:left="-3dp"
            android:right="-3dp"
            android:bottom="-3dp">
            <shape>
                <solid android:color="@android:color/transparent" />
    
                <stroke
                    android:width="3dp"
                    android:color="#C81F25" />
            </shape>
        </item>
    
    </layer-list>