10
A
回答
12
試試這個:
<?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>
+0
我推薦這個答案。看到我的答案[這裏](http://stackoverflow.com/a/42145439/7292819)鏈接到文檔和一個例子,這將給如何使用這個更多的想法。 – Gary99 2017-03-28 01:22:52
+0
對不起我的問題,但你爲什麼第一次使用
2
您可以嘗試在代碼或xml中製作LayerDrawable
。做一個矩形和一個三角形 退房的開發者網站獲取更多信息:http://developer.android.com/reference/android/graphics/drawable/LayerDrawable.html
2
這個類是一個View
定義,並繪製一個梯形ShapeDrawable
。因此,梯形,作爲Drawable
,也可用於背景。
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);
}
}
相關問題
- 1. 如何合併兩個形狀在一個梯度的Android
- 2. 雙梯形形狀
- 3. 如何創建從一個形狀到另一個形狀的變形效果?
- 4. Android的形狀 - 梯度應到右側
- 5. 創建形狀與CSS梯度
- 6. 陰影與CSS梯形形狀按鈕
- 7. 帶文本的CSS梯形形狀
- 8. 製作梯形標籤形狀
- 9. Visio:如何獲取包含在一個形狀中的形狀?
- 10. 在C#上構造一個形狀爲環的形狀
- 11. 在Android中移動一個形狀
- 12. 建立一個形狀類三角形
- 13. 在Java中打印一個梯形
- 14. Android:在另一個形狀內繪製形狀
- 15. android形狀內的形狀
- 16. 在另一個矩形內創建一個形狀
- 17. 當形狀部分透明時,如何在Canvas中從另一個形狀(XOR)切出一個形狀?
- 18. 如何讓形狀創建一個圓形?
- 19. 如何將Sprite變形爲梯形?
- 20. 如何在Android中繪製形狀
- 21. 如何在PHP中實現梯形法?
- 22. 梯度上的一個矩形在QML
- 23. Slick2d形狀包含另一個形狀
- 24. 如何在UITableViewCell中創建一個圓形狀?
- 25. 如何在draw.io中創建一個固定大小的形狀?
- 26. 使用android.graphics.Path從另一個形狀中刪除一個形狀
- 27. android中的形狀
- 28. 如何在android xml中繪製三角形形狀
- 29. 在java中打印'*'梯形
- 30. 在opengl中翻譯另一個形狀內的形狀
使用std用自定義形狀 – pskink 2014-09-10 14:49:50
使用矢量繪製ShapeDrawable:見我的回答如下。 – 2017-03-21 13:50:47
檢查這個[答案](http://stackoverflow.com/questions/41551094/how-to-create-leaning-list-items/41622884#41622884) – 2017-03-23 12:28:58