2017-09-29 8 views
2

드로잉을 레이아웃 중 하나의 배경으로 사용하기 위해 drawable을 생성하려고하는데 중간에 2 개의 단색을 표시 할 수 없습니다.2 색 단색으로 그리기

현재 배경이 단색이고 반투명 흰색 직사각형의 오버레이가 사각형의 상단 절반을 따라 원래의 단색 배경색에 색을 칠하도록 시도하고 있습니다. 그래도 이렇게 할 필요는 없습니다.

전환을 즉시 수행 할 방법을 찾을 수없는 경우 그래디언트가 작동하지 않습니다.

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
<item> 
    <shape android:shape="rectangle"> 
     <size android:height="@dimen/basic_runners_height"></size> 
     <solid android:color="@color/brb_orange" 
      android:gravity="bottom"></solid> 
    </shape> 
</item> 
<item> 
    <shape android:shape="rectangle"> 
     <size android:height="@dimen/basic_runners_height_halved"></size> 
     <solid android:color="@color/md_white_1000" 
      android:alpha="127" 
      android:gravity="top"></solid> 

    </shape> 
</item> 

그래서, 이것의 나의 이해는 두 가지 형태, 절반 기타의 크기가 있어야한다는 것입니다. 첫 번째 모양은 전체 드로어 블을 오렌지색으로 처리하고 다른 드로잉은 흰색이고 ~ 50 % 투명한 (알파 = 127) 드로어 블의 절반을 차지하고 상단을 향해 끌어 당깁니다.

드로어 블의 미리보기는 오렌지색의 힌트없이 완전히 흰색입니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

편집 : 나는 심지어 투명성을 귀찮게 할 필요가 없도록

오른쪽, 더 간단이를 만들기 위해, 내 @color에 색을 칠한 색상을 추가했습니다. XML은 아래와 같습니다

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
<item android:top="@dimen/basic_runners_height_halved"> 
    <shape android:shape="rectangle" > 
     <size android:height="@dimen/basic_runners_height_halved" /> 
     <solid android:color="@color/brb_orange_tint" /> 
    </shape> 
</item> 

<item android:top="@dimen/basic_runners_height"> 
    <shape android:shape="rectangle" > 
     <size android:height="@dimen/basic_runners_height" /> 
     <solid android:color="@color/brb_orange" /> 
    </shape> 
</item> 

그러나 이것은 심지어 트릭을하지 않습니다 ... runners_height_halved runners_height의 절반 DP하지만이 중간 아래로 분할하지 않습니다. 어쩌면 drawable의 10 %가 착색 된 색이며, 어떤 이유로 착색 된 색이 바닥에 오도록 되돌릴 수 있습니다. 이것은 가장 간단한 것입니다 ...

답변

0

<item> 태그에서 패딩 (위쪽, 왼쪽, 오른쪽, 아래쪽)을 사용하려고합니다. 도움이 되었으면 좋겠다.

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
<item> 
    <shape android:shape="rectangle"> 
     <size android:height="@dimen/basic_runners_height"></size> 
     <solid android:color="@color/brb_orange" 
      android:gravity="bottom"></solid> 
    </shape> 
</item> 
<item android:top="10dp" 
     android:left="10dp" 
     android:right="10dp" 
     android:bottom="10dp"> 
    <shape android:shape="rectangle"> 
     <size android:height="@dimen/basic_runners_height_halved"></size> 
     <solid android:color="@color/md_white_1000" 
      android:alpha="127" 
      android:gravity="top"></solid> 

    </shape> 
</item>