gpt4 book ai didi

android - 可以在 Android XML 中创建这个简单的形状吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:05:31 28 4
gpt4 key购买 nike

我正在尝试在 Android XML 中创建以下简单形状:

Simple Shape

只是一个矩形与三角形结合形成一个箭头。该形状应用于导航按钮背景。

在 Windows Phone 上,在 XAML 中创建此形状没有问题,但 Android 的 XML 绘图功能似乎更加有限。

我尝试使用普通矩形作为“主体”并使用旋转矩形作为三角形来创建图层列表可绘制对象。只要三角形与边框对齐,通过旋转矩形创建三角形就可以正常工作。一旦我尝试将三角形向左移动/平移(到主体/框的末端),三角形就不再是三角形了,当然只是一个旋转的矩形……有没有办法剪掉旋转矩形的一半并将其移动到 XML 框的末尾?

当然这可以用 Code/Java 完成,但我想知道它是否也可以用 XML。

我需要这种有许多不同尺寸的按钮,并且使用 XML 可绘制对象(从我的角度来看)比使用几十个 PNG 要好得多。

最佳答案

试试这个自定义形状:

Shape shape = new Shape() {
Path path = new Path();
@Override
protected void onResize(float width, float height) {
path.reset();
path.lineTo(width - height / 2, 0);
path.lineTo(width, height / 2);
path.lineTo(width - height / 2, height);
path.lineTo(0, height);
path.close();
}
@Override
public void draw(Canvas canvas, Paint paint) {
canvas.drawPath(path, paint);
}
};
ShapeDrawable d = new ShapeDrawable(shape);
d.getPaint().setColor(0xff6699bb);

someView.setBackgroundDrawable(d);

关于android - 可以在 Android XML 中创建这个简单的形状吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24141509/

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