Android:如何在右上角添加三角形形状

Android:如何在右上角添加三角形形状,android,layout,Android,Layout,我希望在布局的右上角使用三角形来执行此类按钮: 我已经开始了这个没有三角形的布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="48dp" android:gravity="center_vertical" android:pad

我希望在布局的右上角使用三角形来执行此类按钮:

我已经开始了这个没有三角形的布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="48dp"
     android:gravity="center_vertical"
     android:paddingLeft="@dimen/keyline_1"
     android:paddingRight="@dimen/keyline_2">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@color/grey"
    android:text="DESCRIPTION"/>

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_alignParentRight="true">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingRight="@dimen/keyline_4"
        android:textColor="@color/grey"
        android:text="info"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="@color/grey"
        android:text="TITLE"/>

</LinearLayout>

</RelativeLayout>
您必须创建一个形状并将其添加为如下背景:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
    <rotate
        android:fromDegrees="45"
        android:toDegrees="45"
        android:pivotX="-40%"
        android:pivotY="87%" >
        <shape
            android:shape="rectangle" >
            <stroke android:color="@color/transparent" android:width="10dp"/>
            <solid
                android:color="@color/your_color_here" />
        </shape>
    </rotate>
</item>

另外,如果您不熟悉形状,请尝试使用下面的代码创建三角形形状并使其成为文本视图背景

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item>
        <rotate
            android:fromDegrees="-45"
            android:toDegrees="45"
            android:pivotX="0%"
            android:pivotY="1%" >
            <shape android:shape="rectangle" >
                <stroke
                    android:width="10dp"
                    android:color="#00000000" />

                <solid android:color="#00ACED" />
            </shape>
        </rotate>
    </item>
 </layer-list>
并使用下面的代码旋转文本视图

<TextView
                android:id="@+id/won_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:paddingTop="20dp"
                android:rotation="-45"
                android:text="@string/won"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textColor="@android:color/white"
                android:textSize="34sp" />

更多详细信息请参阅

Skizo,我不明白如何在布局xml中使用您的形状??您需要添加可绘制的xml文件,然后添加@Skizo xml代码。你可以在你的文本视图中使用该文件,例如:让我知道你是否会面临任何问题。你如何在其中添加文本本身,即-48%?
<TextView
                android:id="@+id/won_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:paddingTop="20dp"
                android:rotation="-45"
                android:text="@string/won"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textColor="@android:color/white"
                android:textSize="34sp" />