随笔分类 -  flutter

摘要:今天正好需求做完了没啥事,学习了一下CustomPaint,做了一个圆圈式的进度条,代码如下: import 'dart:async'; import 'dart:math'; import 'package:flutter/material.dart'; void main() => runApp 阅读全文
posted @ 2020-10-12 18:23 NeoZy 阅读(983) 评论(0) 推荐(0)
摘要:Flutter中自绘组件是CustomPaint,它是一个widget。配合CustomPainter(画笔),可以画出任意想要的图形。 CustomPaint构造函数如下: const CustomPaint({ Key key, this.painter, ///背景画笔,会展示在child后面 阅读全文
posted @ 2020-10-12 15:59 NeoZy 阅读(907) 评论(0) 推荐(0)
摘要:好久没写博客了,今天写一个新学的Widget:AnimatedSwitcher 其构造函数如下: const AnimatedSwitcher({ Key key, this.child, @required this.duration, this.reverseDuration, this.swi 阅读全文
posted @ 2020-09-25 19:12 NeoZy 阅读(396) 评论(0) 推荐(0)
摘要:class Page { int currentPage = 1; static void scorllDown() { ///错误:static方法不能访问普通成员变量 currentPage = 1; print("ScrollDown..."); } void scorllUp() { cur 阅读全文
posted @ 2020-09-05 21:19 NeoZy 阅读(1530) 评论(0) 推荐(0)
摘要:没事写代码写到标注释这一句报错: class TestPage extends StatefulWidget { @override TestPageState createState() { return TestPageState(); } } class TestPageState exten 阅读全文
posted @ 2020-09-05 21:02 NeoZy 阅读(2029) 评论(0) 推荐(0)
摘要:quarterTurns表示几个1/4,只能是int child内部组件。 阅读全文
posted @ 2020-09-03 17:25 NeoZy 阅读(249) 评论(0) 推荐(0)
摘要:可以拦截内部child的返回事件,其中onWillPop返回Future<bool>,如果是false,就不会出栈,如果true就会出栈。 例子: import 'dart:core'; import 'package:flutter/cupertino.dart'; import 'package 阅读全文
posted @ 2020-09-03 17:22 NeoZy 阅读(642) 评论(0) 推荐(0)
摘要:首先要引用event_bus.dart文件 初始化EventBus全局对象 生成一个event类,也可以用父类event来传递 在需要监听总线的页面添加监视器,类型是StreamSubscription,可以指定监听的event类型,不符合的event不会被监听到 发送事件可以用EventBus.f 阅读全文
posted @ 2020-08-23 00:39 NeoZy 阅读(717) 评论(0) 推荐(0)
摘要:column和row的children属性可以使用匿名函数来添加。可以省去大量重复代码: Column( mainAxisAlignment: MainAxisAlignment.center, children: (){ var p = List<Widget>(); for(int i=0; i 阅读全文
posted @ 2020-08-23 00:18 NeoZy 阅读(266) 评论(0) 推荐(0)
摘要:flutter三大金刚:widget/Element/RenderObject 一个完整的idget工作流程: 1.widget被加载时,创建出widget对应的element对象 2.element通过rederobject实现绘制(实际看到的是renderobject绘制的画面) ⚠️:flut 阅读全文
posted @ 2020-08-20 10:53 NeoZy 阅读(254) 评论(0) 推荐(0)
摘要:futureBuilder和StreamSBuilder可以用来异步更新UI,比如我们需要请求一个server的数据,可以使用这两者来实现。 当然用StatefulWidget肯定也可以做,但这两个组件使得代码量更少,更精简。 futureBuilder源码: class FutureBuilder 阅读全文
posted @ 2020-08-18 17:55 NeoZy 阅读(532) 评论(0) 推荐(0)
摘要:Notification源码: abstract class Notification { /// Abstract const constructor. This constructor enables subclasses to provide /// const constructors so 阅读全文
posted @ 2020-08-18 12:24 NeoZy 阅读(252) 评论(0) 推荐(0)
摘要:下面代码有三个button,内容都是一样的,只不过包装方式不同。 第一个是没有包装的,第二个用Builder包了一层,第三个封装成了StatelessWidget。 运行一下,第一个button会报如下错误: 是说调用的Scaffod.of(context)找不到Scaffold。 import ' 阅读全文
posted @ 2020-08-17 00:08 NeoZy 阅读(1310) 评论(0) 推荐(0)
摘要:class _Drag extends StatefulWidget { @override _DragState createState() => new _DragState(); } class _DragState extends State<_Drag> with SingleTicker 阅读全文
posted @ 2020-08-15 23:10 NeoZy 阅读(1421) 评论(0) 推荐(0)
摘要:absorbPointer开启absorbing:本身可以接收点击事件,但不会把事件传递给子组件。 ignorePointer开启ignoring:本身和子组件都不能接收点击事件。 import 'package:flutter/material.dart'; import 'package:flu 阅读全文
posted @ 2020-08-14 12:01 NeoZy 阅读(2299) 评论(0) 推荐(0)
摘要:视频:https://www.youtube.com/watch?v=Zbm3hjPjQMk 可以通过继承InheritedWidget来使得当前widget的变化可被子widget感知;而且子Widget可以直接调用该Widget的某些数据,而如果不用InheritedWidget,就需要在从顶层 阅读全文
posted @ 2020-08-13 16:38 NeoZy 阅读(203) 评论(0) 推荐(0)
摘要:转载于https://www.jianshu.com/p/6346770649cc Switch 是一个切换按钮组件,通常用于设置的选项里。Switch 的原点颜色,横条颜色都可以设置,此外原点可以以图片形式显示。 new Switch( value: this.check, activeColor 阅读全文
posted @ 2020-08-07 01:48 NeoZy 阅读(1464) 评论(0) 推荐(0)
摘要:限制尺寸 1.constrainedbox(constrains :一个boxconstrains,child) 其中boxconstraints的属性有minwidth/minheight/maxwidth/maxheight等 2.sizedbox(width, height, child) 阅读全文
posted @ 2020-08-07 01:00 NeoZy 阅读(166) 评论(0) 推荐(0)
摘要:这个方法可以从屏幕下方弹出一个对话框。 例子: showModalBottomSheet( context: context, isScrollControlled:false, backgroundColor: Colors.white, shape: RoundedRectangleBorder 阅读全文
posted @ 2020-08-06 22:01 NeoZy 阅读(1403) 评论(0) 推荐(0)
摘要:一般会用到的dialog就是下面的showDialog函数。 使用方式一般就是:showDialog( 一个context,一个 builder), Future<T> showDialog<T>({ @required BuildContext context, bool barrierDismi 阅读全文
posted @ 2020-08-06 21:14 NeoZy 阅读(767) 评论(0) 推荐(0)