2012-06-04 16 views
3

我想要得到类似于您可以在下面看到的形状。我缺少的是标题颜色(匿名文本背后的颜色)。我已经转载了什么,我想通过简单的移动在第二TextView的鼠标这是现在突出,使这种效果:)如何让这样的形状?

当前代码:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
android:shape="rectangle"> 
<stroke android:width="2dp" android:color="#000000" /> 
<gradient android:startColor="#898989" android:endColor="#B5B5B5" android:angle="270"/> 

<corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp" 
android:topLeftRadius="7dp" android:topRightRadius="7dp"/> 
</shape> 

enter image description here

回答

2

您需要使用Layer List那包含两个drawable。

例如,首先会覆盖整个形状,并且所述第二将覆盖它,但与android:top="10dp"集合,以创建一个偏移量示出了下面的第一形状

编辑:
像这样:

<?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="2dp" 
       android:color="#000000" /> 

      <solid android:color="#00ff00" /> 

      <corners 
       android:bottomLeftRadius="7dp" 
       android:bottomRightRadius="7dp" /> 
     </shape> 
    </item> 
    <item 
     android:bottom="2dp" 
     android:left="2dp" 
     android:right="2dp" 
     android:top="20dp"> 
     <shape android:shape="rectangle" > 
      <gradient 
       android:angle="270" 
       android:endColor="#B5B5B5" 
       android:startColor="#898989" /> 

      <corners 
       android:bottomLeftRadius="7dp" 
       android:bottomRightRadius="7dp" /> 
     </shape> 
    </item> 
</layer-list> 
+0

谢谢,这看起来甚至更好的解决方案。 –

+0

......但这并不完全正常 - 现在我也在整个标题中敲击!是否可以将描边仅设置为左边界,顶部边界和右边界? –

+0

没问题,我做了一个编辑。 (从第二个形状中删除笔画,并在笔画的大小中添加项目偏移量) – eladr

1

使用LinearLayout并将两个不同形状的TextView作为背景。

第一个上角落圆角,第二个下角落。

+0

谢谢,我现在觉得哑巴:) –

相关问题