Si8
Si8

Reputation: 9225

Add a stroke on top of a layout

I have the following XML code:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <stroke
        android:width="0dp"
        android:color="#CCFFFFFF" />
    <solid android:color="#55FFFFFF" />
    <padding
        android:left="0dp"
        android:right="0dp"
        android:top="0dp"
        android:bottom="0dp" />
    <corners android:topLeftRadius="0dp" android:topRightRadius="0dp" android:bottomLeftRadius="8dp" android:bottomRightRadius="8dp" />
</shape>

which produces the following:

enter image description here

How do I modify the code so there is a black line on the top like this:

enter image description here

Upvotes: 0

Views: 230

Answers (3)

Carlos Robles
Carlos Robles

Reputation: 10947

when the color of the top layer IS NOT semi-transparent, there is a fast, versatil, and clean, to add borders to a view, with layerlist drawable. Probably you couldnt use it in your case, but it this will be handful to somebody else who reach this question

for this, you create an xml file in you drawable folder, called border.xml with this content:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item>
      <shape 
        android:shape="rectangle">
         <padding android:left="0dp" android:top="0dp" android:right="0dp"
    android:bottom="0dp" />

                <solid android:color="#000000" />


        </shape>
   </item>
   <item  > 
      <shape 
        android:shape="rectangle">
             <padding android:left="0dp" android:top="10dp" android:right="0dp"
    android:bottom="0dp" />
            <solid android:color="#ffffff" />
        </shape>
   </item>

</layer-list>

Then in your layout, you use

android:background="@drawable/border"

with this you have a way to quickly add borders, to one, or more sides of any view.

Upvotes: 1

FinalDark
FinalDark

Reputation: 1748

You can add above the text and below the shape in xml file this code

   <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="#000000" />

Upvotes: 1

neworld
neworld

Reputation: 7793

You should do what with nine-patch or insert View widget with height 1dp (or more) and black background above this TextView.

Upvotes: 1

Related Questions