如何在Android中创建一侧倾斜的矩形?

时间:2017-01-06 01:59:02

标签: android drawable

如何创建这样的drawable?

shape

3 个答案:

答案 0 :(得分:1)

搜索关键字是:“Android如何创建自定义形状”。

你会发现很多例子。例如this一个。

如果你想要的形状你想要的是一个普通的矩形+一个三角形,你可以从提供的链接得到结果,只需要调整参数。

altered image

我希望是有帮助的!

答案 1 :(得分:0)

您可以尝试以下代码:

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

<!-- Colored rectangle-->
<item>
    <shape android:shape="rectangle">
        <size
            android:width="100dp"
            android:height="40dp" />
        <solid android:color="#13a89e" />
    </shape>
</item>

<!-- This rectangle for the left side -->
<!-- Its color should be the same as layout's background -->
<item
    android:right="100dp"
    android:left="-100dp"
    android:top="-100dp"
    android:bottom="-100dp">
    <rotate
        android:fromDegrees="45">
        <shape android:shape="rectangle">
            <solid android:color="#13a89e" />
        </shape>
    </rotate>
</item>

<!-- This rectangle for the right side -->
<!-- Their color should be the same as layout's background -->
<item
    android:right="-100dp"
    android:left="100dp"
    android:top="-100dp"
    android:bottom="-100dp">
    <rotate
        android:fromDegrees="45">
        <shape android:shape="rectangle">
            <solid android:color="#ffffff" />
        </shape>
    </rotate>
</item>

并在布局中使用

<View
    android:layout_centerInParent="true"
    android:layout_width="100dp"
    android:layout_height="40dp"
    android:background="@drawable/filename"/>

答案 2 :(得分:0)

我没有倾斜右侧,而是倾斜了左侧,但是您可以使用此逻辑

***

<!-- Colored rectangle-->
<item>
    <shape android:shape="rectangle">
        <padding android:top="35dp"/>
        <size android:width="200dp"
            android:height="40dp" />
        <solid android:color="#13a89e" />
    </shape>
</item>

<!-- This rectangle for the left side -->
<item
    android:right="200dp"
    android:left="-200dp"
    android:top="-200dp"
    android:bottom="-200dp">
    <rotate android:fromDegrees="-45">
        <shape android:shape="rectangle">
            <padding android:top="-35dp"/>
            <solid android:color="#ffffff" />
        </shape>
    </rotate>
</item>

*** 希望这对您有帮助