Jak utworzyć trapezowy kształt jak na poniższym obrazku?jak zbudować trapezowy kształt w Androidzie?
nie chcę użyć obrazu lub 9.png.
Jak utworzyć trapezowy kształt jak na poniższym obrazku?jak zbudować trapezowy kształt w Androidzie?
nie chcę użyć obrazu lub 9.png.
Spróbuj tego:
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="292dp"
android:height="172dp"
android:viewportWidth="292"
android:viewportHeight="172">
<path
android:strokeWidth="1.5"
android:strokeMiterLimit="10"
android:pathData="M 27.046 96.615 L 16.416 150.396 L 271.534 150.396 L 186.495 22.836 L 37.676 22.836 L 27.046 86.615 Z" />
<path
android:fillColor="#00ff00"
android:strokeWidth="1.5"
android:strokeMiterLimit="10"
android:pathData="M 16.046 20.615 L 13.416 150.396 L 271.534 150.396 L 186.495 22.836 L 37.676 22.836 L 16.046 23.615 Z " />
</vector>
Polecam tę odpowiedź. Zobacz moją odpowiedź [tutaj] (http://stackoverflow.com/a/42145439/7292819) za linki do dokumentacji i przykład, który da trochę więcej pomysłu na to, jak tego użyć. – Gary99
Przepraszam za moje pytanie, ale dlaczego najpierw użyłeś
Możesz spróbować, wykonując LayerDrawable
w kodzie lub xml. Zrób kształt prostokąta i kształt trójkąta Sprawdź witrynę programisty więcej informacji: http://developer.android.com/reference/android/graphics/drawable/LayerDrawable.html
Ta klasa jest View
który definiuje i rysuje trapezu ShapeDrawable
. Tak więc trapez, będący Drawable
, może być również użyty w tłach.
package com.stackoverflow.questions.q25768037;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.PathShape;
import android.util.AttributeSet;
import android.view.View;
public class TrapezoidView extends View {
private ShapeDrawable mTrapezoid;
public TrapezoidView(Context context, AttributeSet attrs) {
super(context, attrs);
Path path = new Path();
path.moveTo(0.0f, 0.0f);
path.lineTo(100.0f, 0.0f);
path.lineTo(200.0f, 100.0f);
path.lineTo(0.0f, 100.0f);
path.lineTo(0.0f, 0.0f);
mTrapezoid = new ShapeDrawable(new PathShape(path, 200.0f, 100.0f));
mTrapezoid.getPaint().setStyle(Paint.Style.FILL_AND_STROKE);
mTrapezoid.getPaint().setStrokeWidth(1.0f);
mTrapezoid.getPaint().setColor(Color.GREEN);
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
mTrapezoid.setBounds(0, 0, w, h);
}
@Override
protected void onDraw(Canvas canvas) {
mTrapezoid.draw(canvas);
}
}
użycia std ShapeDrawable o niestandardowym kształcie – pskink
Korzystanie z rozciągliwej wektor: Zobacz moją odpowiedź poniżej. –
Sprawdź tę [odpowiedź] (http://stackoverflow.com/questions/41551094/how-to-create-leaning-list-items/41622884#41622884) –