gpt4 book ai didi

android - 在Android右上角的RelativeLayout上绘制三角形

转载 作者:行者123 更新时间:2023-11-29 14:47:02 25 4
gpt4 key购买 nike

我想在 RelativeLayout 的右上角画一个三角形。

我用这段代码创建了一个 triangle.xml:

<?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/darkblue" android:width="10dp"/>
<solid
android:color="@color/blue" />
</shape>
</rotate>
</item>
</layer-list>

并关注这篇文章:

https://looksok.wordpress.com/2013/08/24/android-triangle-arrow-defined-as-an-xml-shape/

问题是我使用三角形作为我的 RelativeLayout

的背景
    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="wrap_content"
android:layout_height="wrap_content">

<RelativeLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="7dp">

<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentStart="false"
android:layout_alignParentRight="false"
android:layout_marginTop="5dp">

<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="80dp"
android:layout_marginTop="0dp">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:id="@+id/taskTitle"
android:text="title"
android:layout_gravity="left"
android:textSize="15sp"
android:textStyle="bold" />

<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:paddingBottom="5sp">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="@string/standort"
android:id="@+id/textView23" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:id="@+id/taskLocation"
android:text="location"
android:textSize="12sp"
android:layout_marginLeft="3sp" />

</LinearLayout>

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

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:id="@+id/textView22"
android:text="@string/objekt" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:id="@+id/taskObject"
android:text="object"
android:textSize="12sp"
android:layout_marginLeft="3sp" />

</LinearLayout>

</LinearLayout>

</LinearLayout>

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tasklistDone"
android:layout_gravity="right"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginRight="8dp" />

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/taskImage"
android:adjustViewBounds="true"
android:maxHeight="60dp"
android:maxWidth="60dp"
android:minHeight="50dp"
android:minWidth="50dp"
android:layout_alignParentLeft="false"
android:layout_alignParentTop="false"
android:layout_alignParentStart="true"
android:layout_marginLeft="10dp"
android:layout_centerVertical="true" />

<RelativeLayout
android:layout_width="20dp"
android:layout_height="20dp"
android:rotation="45"
android:background="@drawable/triangle"
android:layout_alignParentEnd="true">

</RelativeLayout>

</RelativeLayout>

</LinearLayout>

它看起来像: enter image description here

我需要做什么才能使三角形位于角落?

最佳答案

将可绘制的 rotation 标记更改为:

        <rotate
android:fromDegrees="-45"
android:toDegrees="45"
android:pivotX="0%"
android:pivotY="-45%" >

然后从布局中删除 android:rotation="45" 标签

关于android - 在Android右上角的RelativeLayout上绘制三角形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32222688/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com