2017-01-26 5 views
0

아래에 채팅 거품의 xml 모양을 만드는 방법을 아는 사람이 있는지 물어볼 수 있습니까? 온라인에서 찾은 유일한 예는 두 개의 분리 된 도형이었습니다. 두 개의 분리 된 도형이 하나의 레이아웃에 두 개의 분리 된 배경 (삼각형과 사각형)으로 배치되었습니다. 삼각형과 사각형을 결합하여 사용하지 않으려 고 시도했습니다. 삼각형이 사각형에 숨어있는 것 같습니다. top 속성을 삼각형으로 설정하여 아래로 이동하면 ImageView 객체가 공백이됩니다..png 파일의 모양으로 xml 채팅 거품 만들기

내가 뭘하려 참조하십시오

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <!--rectangle with rounded corners--> 
    <item android:top="0dp" android:bottom="20dp"> 
     <shape xmlns:android="http://schemas.android.com/apk/res/android" 
      android:shape="rectangle"> 
      <solid android:color="@android:color/black" /> 
      <size 
       android:width="106dp" 
       android:height="20dp"/> 
      <stroke 
       android:width="1dp" 
       android:color="#000" /> 
      <corners android:radius="8dp" /> 
     </shape> 
    </item> 
    <!--triangle--> 
    <item android:bottom="0dp" android:top="20dp" android:gravity="center_horizontal|bottom"> 
     <rotate 
      android:fromDegrees="45" 
      android:toDegrees="45" 
      android:pivotX="135%" 
      android:pivotY="15%"> 
      <shape android:shape="rectangle"> 
       <solid android:color="@android:color/black" /> 
       <size 
        android:height="10dp" 
        android:width="10dp"/> 
      </shape> 
     </rotate> 
    </item> 
</layer-list> 

이는 이미지 뷰의 사용이다 : 당신은이 코드를 사용 할 수

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context="net.eventilate.shapes.Balloon"> 
    <ImageView 
     android:layout_width="106dp" 
     android:layout_height="30dp" 
     android:id="@+id/imageView2" 
     android:contentDescription="@string/test" 
     android:background="@drawable/balloon" 
     android:layout_centerVertical="true" 
     android:layout_centerHorizontal="true" /> 
</RelativeLayout> 

enter image description here

답변

1

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 

<item android:top="0dp" android:bottom="10dp"> 
    <shape xmlns:android="http://schemas.android.com/apk/res/android" 
     android:shape="rectangle"> 
     <solid android:color="@android:color/holo_blue_light" /> 
     <size 
      android:width="106dp" 
      android:height="20dp"/> 
     <stroke 
      android:width="1dp" 
      android:color="#40adc2" /> 
     <corners android:radius="4dp" /> 
    </shape> 
</item> 

<item android:bottom="0dp" 
    android:top="0dp" 
    android:gravity="center_horizontal|bottom"> 
    <rotate 
     android:fromDegrees="45" 
     android:toDegrees="45" 
     android:pivotX="135%" 
     android:pivotY="15%"> 
     <shape android:shape="rectangle"> 
      <solid android:color="@android:color/holo_blue_light" /> 
      <size 
       android:height="10dp" 
       android:width="10dp"/> 
     </shape> 
    </rotate> 
</item> 
</layer-list> 

을 ~을 얻다 그의 결과 : enter image description here