如何解决如何在颤振中使用ShapeBorder类制作带有黑色实心圆角边框的自定义形状
我想让下面提到的形状在颤动中带有黑色实心边框,我是颤动的新手,我对 ShapeBorder 不太了解来创建这种形状,请帮助我,如何通过使用 ShapeBorder,我在下面写了一些代码,但它周围没有任何黑色边框?请帮助我,提前致谢,
import 'package:flutter/material.dart';
class InfoDialog extends ShapeBorder {
final bool usePadding;
InfoDialog({this.usePadding = true});
@override
EdgeInsetsGeometry get dimensions => EdgeInsets.only(bottom: usePadding? 20 : 0);
@override
Path getInnerPath(Rect rect,{TextDirection textDirection}) => null;
@override
Path getOuterPath(Rect rect,{TextDirection textDirection}) {
rect = Rect.fromPoints(rect.topLeft,rect.bottomRight - Offset(0,13));
return Path()
..addRRect(RRect.fromRectAndRadius(rect,Radius.circular(5)))
..moveTo(rect.bottomLeft.dx+40,rect.bottomCenter.dy)
..relativeLineTo(5,10)
..relativeLineTo(10,-10)
..close();
}
@override
void paint(Canvas canvas,Rect rect,{TextDirection textDirection}) {
Paint paint = new Paint()
..color = Colors.black
..style = PaintingStyle.stroke
..strokeWidth = 1;
canvas.drawPath(getOuterPath(rect),paint);
}
@override
ShapeBorder scale(double t) => this;
}
这是我的输出,想要制作第二个
这就是我想做的,请看
解决方法
你可以看到这个例子,你可以使用 flutter_custom_clippers: ^1.1.2 并轻松制作这样的。示例:https://pub.dev/packages/flutter_custom_clippers/example
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。