1

リソース ファイルで、Android で三角形を描画する方法に対するいくつかの回答を見つけました。しかし、三角形の回転を変更する方法を説明するものは見つかりませんでした。

私が見つけた例:

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

三角形を変更して矢印を次のようにする方法を誰かが説明できます。

ここに画像の説明を入力

4

1 に答える 1

1

私はなんとかその矢印を描くことができました。コードは次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:id="@+id/triangle_shape">
        <rotate
            android:fromDegrees="45"
            android:toDegrees="45"
            android:pivotX="0%"
            android:pivotY="140%" >
            <shape
                android:shape="rectangle" >
                <stroke 
                    android:color="@color/color_app_transparent" 
                    android:width="2dp" />
                <size android:width="50dp" android:height="50dp"/>
                <solid
                    android:color="@color/color_app_primary" />
            </shape>
        </rotate>
    </item>
</layer-list>

私が理解していることとしては、正方形を 45 度回転させる必要があり、次に X 点と Y 点を調整して、正方形の大部分を非表示にし、1 つのエッジのみを表示するようにしました。この方法で矢印を作成しました。

45°回転後の形状:

ここに画像の説明を入力

そして、点 X と Y を変更した後の最終結果:

ここに画像の説明を入力

ImageView を使用して、幅と高さの矢印を wrap_content として表示しました。

于 2014-09-22T13:29:32.640 に答える