web-dev-qa-db-ja.com

上部と下部の境界のみを表示する方法

これは、正常に機能する私のXMLコードです。唯一の問題は、4辺すべてに境界線が表示されているのに対して、上部と下部にのみ境界線を表示することです。どうやってやるの?

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" >

    <solid Android:color="#FFFFFF" />
    <stroke
        Android:width="3dip"
        Android:color="#B1BCBE"
    />

    <padding
        Android:bottom="0dip"
        Android:left="0dip"
        Android:right="0dip"
        Android:top="0dip"
    />

</shape>
14
user2761245

以下をお試しください

<?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="#FF0000" /> 
    </shape>
  </item>   
    <item Android:bottom="5dp"  Android:top="5dp" >  
     // add Android:right="5dp" and Android:left="5dp" for border on left and right
     <shape Android:shape="rectangle"> 
      <solid Android:color="#000000" />
    </shape>
   </item>    
 </layer-list> 

enter image description here

編集:

色、ストローク幅、パディングを変更して、要件に応じて以下を変更します

<?xml version="1.0" encoding="utf-8"?>
  <layer-list xmlns:Android="http://schemas.Android.com/apk/res/Android">
  <item> 
    <shape Android:shape="rectangle">
    <stroke
        Android:width="5dip"
        Android:color="#B1BCBE"
    />
    <padding
        Android:bottom="0dip"
        Android:left="0dip"
        Android:right="0dip"
        Android:top="0dip"
    />
    </shape>
  </item>   
    <item Android:bottom="5dp"  Android:top="5dp" >  
     <shape Android:shape="rectangle"> 
      <solid Android:color="#FFFFFF" />
    </shape>
   </item>    
 </layer-list>  

スナップ

enter image description here

39
Raghunandan

使用する:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:Android="http://schemas.Android.com/apk/res/Android">
 <!-- Describes the line -->
    <item Android:top="-1dp" Android:bottom="-1dp">
        <shape>
            <solid Android:color="@Android:color/transparent" />
            <stroke Android:width="1dp" Android:color="#ffffff" />
        </shape>   
    </item>
</layer-list>
10
Daniel L.

これを試して:

<padding
    Android:bottom="0dip"
    Android:left="-1dip"
    Android:right="-1dip"
    Android:top="0dip" 
/>
7
Prachi

このコードを参照してください-

<?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="#cccccc"/>
        </shape>
    </item>
    <item Android:top="2dp" Android:bottom="2dp">
        <shape 
            Android:shape="rectangle">
        <solid Android:color="#efefef"/>
        </shape>
    </item>
</layer-list>
1
Vishal Pawale

アイテムの高さと幅の属性はAPI 23からのみサポートされているため、layer-listの高さと幅の属性は言うまでもありません。

Android 4.0以上5.0以下)で動作するDrawable以下を使用できます。

<?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="@color/blue_light" />  <!-- this is stroke color-->
        </shape>
    </item>

    <item Android:bottom="5dp" Android:top="5dp">
        <shape Android:shape="rectangle">
            <solid Android:color="@color/dark_blue" />  <!-- this is main color-->
        </shape>
    </item>

</layer-list>
1
Pranav