Dalam Flutter, garis putus-putus (dash line) dapat dicapai dengan menggunakan CustomPaint widget dan menggambar garis dengan menggunakan Canvas dan Paint. Berikut adalah langkah-langkah umum untuk membuat garis putus-putus:
- Buat widget baru yang menggunakan
CustomPaint. Misalnya, kita dapat membuat widgetDashedLine:
class DashedLine extends StatelessWidget {
final double height;
final Color color;
DashedLine({this.height = 1.0, this.color = Colors.black});
@override
Widget build(BuildContext context) {
return CustomPaint(
painter: _DashedLinePainter(height: height, color: color),
);
}
}
- Buat
CustomPainteryang akan digunakan untuk menggambar garis putus-putus. Dalam kasus ini, kita akan menggunakanPaint.dashPathuntuk mengatur pola garis putus-putus:
class _DashedLinePainter extends CustomPainter {
final double height;
final Color color;
_DashedLinePainter({this.height, this.color});
@override
void paint(Canvas canvas, Size size) {
final paint = Paint()
..color = color
..strokeWidth = height
..style = PaintingStyle.stroke
..strokeCap = StrokeCap.square;
final dashWidth = 5;
final dashSpace = 5;
double startX = 0;
while (startX < size.width) {
canvas.drawLine(
Offset(startX, 0),
Offset(startX + dashWidth, 0),
paint,
);
startX += dashWidth + dashSpace;
}
}
@override
bool shouldRepaint(CustomPainter oldDelegate) {
return false;
}
}
Sekarang, kita dapat menggunakan DashedLine di dalam widget lain untuk menggambar garis putus-putus:
DashedLine(height: 1.0, color: Colors.black),
Dengan menggunakan pendekatan ini, kita dapat dengan mudah mengatur tinggi dan warna garis putus-putus sesuai kebutuhan.
Ini adalah contoh sederhana untuk membuat garis putus-putus dalam Flutter. Anda juga dapat menyesuaikan pola dan gaya garis putus-putus sesuai dengan kebutuhan Anda dengan mengatur dashWidth dan dashSpace pada CustomPainter.