当前位置: 首页 > news >正文

东莞网站建设培训学校wordpress十大表格插件

东莞网站建设培训学校,wordpress十大表格插件,ktv网站模板,浦口建设局网站功能:CustomPaint 相当于在一个画布上面画画,可以自己绘制不同的颜色形状等 在各种widget 或者是插件不能满足到需求的时候,可以自己定义一些形状 使用实例和代码: CustomPaint: 能使你绘制的东西显示在你的ui 上面&a…

在这里插入图片描述

功能:CustomPaint

  • 相当于在一个画布上面画画,可以自己绘制不同的颜色形状等
  • 在各种widget 或者是插件不能满足到需求的时候,可以自己定义一些形状

使用实例和代码:

CustomPaint: 能使你绘制的东西显示在你的ui 上面,
painter=》child=》oregroundPainter,foregroundPainter最外面的一层会覆盖painter,child 层里面的widget.

 return Container(//painter 绘制完成之后需要再CustomPaint 里面构建称为widgetchild: Center(child: CustomPaint(child: Icon(Icons.abc,size: 40,color: Colors.red,),painter: MybackGroudnPaiter(), //最内一层//  child: ,//子组件,在中间foregroundPainter: ForegroundPainter(), //最外面一层,也是  CustomPainter),),);

CustomPainter 绘制

class MybackGroudnPaiter extends CustomPainter {void paint(Canvas canvas, Size size) {//canvas 画布,size 画布的尺寸//在这边绘制// canvas.drawColor(Colors.red, BlendMode.color);var centerp = size / 2;//定义画笔是什么颜色,样式,画笔的宽度var paint = Paint()..color = Colors.teal..style = PaintingStyle.fill..strokeWidth = 2.0;canvas.drawRect(Rect.fromLTWH(centerp.width - 100, centerp.height - 100, 200, 200),paint);}bool shouldRepaint(covariant CustomPainter oldDelegate) {return true;}
}class ForegroundPainter extends CustomPainter {void paint(Canvas canvas, Size size) {var centerp = size / 2;//定义画笔是什么颜色,样式,画笔的宽度var paint = Paint()..color = Colors.pink..style = PaintingStyle.fill..strokeWidth = 2.0;canvas.drawRect(Rect.fromLTWH(centerp.width - 130, centerp.height - 130, 200, 200),paint);}bool shouldRepaint(covariant CustomPainter oldDelegate) {// TODO: implement shouldRepaintreturn true;}
}

绘制完成之后显示的图片


绘画的能力

我们绘制1000个彩色点点,从上往下掉落,看看性能,没有任何的卡顿,真给力

import 'dart:math';
import 'package:flutter/material.dart';void main() => runApp(const MyApp());class MyApp extends StatelessWidget {const MyApp({Key? key}) : super(key: key);Widget build(BuildContext context) {return const MaterialApp(home: Scaffold(backgroundColor: Colors.white,body: MyHomePage(title: 'jack ma',),),);}
}class MyHomePage extends StatefulWidget {const MyHomePage({Key? key, required this.title}) : super(key: key);final String title;State<MyHomePage> createState() => _MyHomePageState();
}class _MyHomePageState extends State<MyHomePage>with SingleTickerProviderStateMixin {late AnimationController _controller;final List<Snowflake> _snowflakes =List.generate(1000, (index) => Snowflake());void initState() {;_controller =AnimationController(vsync: this, duration: const Duration(seconds: 5))..repeat();super.initState();}Widget build(BuildContext context) {return Scaffold(body: Center(child: SizedBox(width: double.infinity,height: double.infinity,child: AnimatedBuilder(animation: _controller,builder: (BuildContext context, Widget? child) {//一直在这边build,5s 动画运行时间for (var snow in _snowflakes) {snow.fall();}return CustomPaint(painter: MyPainter(_snowflakes),);},),),));}
}class MyPainter extends CustomPainter {final List<Snowflake> _snowflakes;MyPainter(this._snowflakes);void paint(Canvas canvas, Size size) {final whitePaint = Paint()..color = Colors.grey;for (int i = 0; i < 1000; i++) {whitePaint.color = Colors.primaries[i % Colors.primaries.length];canvas.drawCircle(Offset(_snowflakes[i].x, _snowflakes[i].y),_snowflakes[i].radius, whitePaint);}}bool shouldRepaint(covariant CustomPainter oldDelegate) => true;
}class Snowflake {double x = Random().nextDouble() * 400;double y = Random().nextDouble() * 800;double radius = Random().nextDouble() * 2 + 2;double velocity = Random().nextDouble() * 4 + 2;void fall() {y += velocity;if (y > 800) {y = 0;x = Random().nextDouble() * 400;radius = Random().nextDouble() * 2 + 2;velocity = Random().nextDouble() * 4 + 2;}}
}

在这里插入图片描述

http://www.yayakq.cn/news/384423/

相关文章:

  • 建行官方网站多少和县网站建设
  • 电子商务网站排名什么网站做淘宝素材比较好
  • 天津正规制作网站公司个人网站怎么申请注册
  • 谷歌网站推广公司无锡网站制作哪家服务好
  • 做商务网站要多少钱网站建设进项填那个服务
  • 做网站学cdr吗线上编程
  • 网站制作最流行软件营销型网站建设实训总结
  • 石家庄建设企业网站室内设计师招聘简章
  • 佛山营销网站建设费用查网站流量查询工具
  • 软件公司做网站推广科目朋友圈发布到wordpress
  • 镇江建设工程质量监督局网站wordpress怎么改图片
  • 爱站网站wordpress 关注插件
  • 大浪做网站竞价推广网络推广运营
  • 山东城市建设职业学院教务网网站wordpress 分类菜单
  • 做外包的网站有哪些网站首页引导页
  • 建筑专业网站建设手机网站建设视频教程_
  • 注册网站做推广做电影采集网站用什么vps
  • 网站制作 深圳做网站顶部图片长度是多少
  • 道滘网站仿做浙江做网站的公司有哪些
  • 淘宝优惠网站怎么做深圳设计网站费用
  • 网站怎么设置二级域名网站 建设ppt
  • 做流量哪个网站好义乌国际贸易综合信息服务平台
  • 温州网站建设活动wordpress自动跳转
  • 建设网站的注意事项查询建设工程施工规范网站
  • 土特产直营建设网站的调研成都网站建设熊掌号
  • php整站开发 企业网站教程智能网站设计哪家好
  • 玉溪做网站公司中国建筑集团有限公司怎么样
  • WordPress主题页面模板不见了seo营销型网站推广
  • 东莞h5网站制作做网站的骗术
  • 网站建设1自学网站开发软件开发