C/C++教程

flutter 基础 —— CustomPaint 路径动画

本文主要是介绍flutter 基础 —— CustomPaint 路径动画,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

路径动画

 

示例:

 

 

代码

var path = Path()
  ..moveTo(50, 50)
  ..lineTo(100, 100)
  ..lineTo(200, 90);
var rect1 = Rect.fromCircle(center: Offset(80, 450), radius: 60);
// 中间断开了
path.arcTo(rect1, 0, pi, true);
//由于前面断开了,所以总共有两段路径
ui.PathMetrics pathMetrics = path.computeMetrics();
if (_controller.value < 0.5) {
  var m = pathMetrics.first;
  Path extPath = m.extractPath(0, m.length* _controller.value*2);
  canvas.drawPath(
      extPath,
      Paint()
        ..strokeWidth = 5
        ..style = PaintingStyle.stroke
        ..color = Colors.red);
} else {
  var m = pathMetrics.last;
  Path extPath = m.extractPath(0, m.length* (_controller.value - 0.5) *2);
  canvas.drawPath(
      extPath,
      Paint()
        ..strokeWidth = 5
        ..style = PaintingStyle.stroke
        ..color = Colors.red);
}

  

2333

这篇关于flutter 基础 —— CustomPaint 路径动画的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!