1.Dart

  面向对象语言,与java类比学习

  非常适合移动和Web应用程序

  1.dart官网

  2.Dark2 中文文档

  3.Dart语法学习

  4.极客学院Dart学习

  5.Flutter与Dart 入门

2.Flutter

  树形布局,一切皆组件

  1.flutter文档

  2.社区中文资源

  2.flutter中文文档(更新滞后)

  3.flutter学习入门:

    http://jspang.com/archives/

    https://juejin.im/user/59ed44cf6fb9a0451c398c45/posts

  4.flutter提升:

    https://segmentfault.com/u/yuwanhenshu/articles?sort=created

    flutter学习与爬坑:https://www.jianshu.com/nb/26101414

    https://github.com/CarGuo/GSYGithubAppFlutter

3.爬坑

  1.listview嵌套listview

    子listview需要制定高度,使用 shrinkWrap: true 内容适配高度;

    滑动类型设置:  physics: new NeverScrollableScrollPhysics(), 禁止子模块列表滑动影响下拉刷新

    https://blog.csdn.net/hao_m582/article/details/84112278#ListView_1

  2.SimpleDialog

    需要指定宽和高

  3.验证码倒计时重发实现

    使用dart的async包下的 Timer.periodic 实现

    https://www.jianshu.com/p/f7a9b8c84d26

  4.微信分享插件

    先注册APPID

    https://pub.dartlang.org/packages/sy_flutter_wechat

  5.将图像保存到照片库

    https://pub.dartlang.org/packages/image_picker_saver

  6.屏幕溢出问题

    水平溢出:

      对于图片,动态的text数据,需要对container容器的宽度做计算约束,适配不同大小的手机

    constraints: BoxConstraints(maxWidth: _descWidth),

      获取屏幕宽度

     MediaQuery.of(context).size.width

    垂直溢出:

      对于不是滑动页面会出现底部溢出,使用 SingleChildScrollView 包裹,使其滑动,避免垂直溢出

  7.Dialogs, alerts

    flutter中弹窗是相当于一个页面,一个新的context

  8.页面传参

    方式一:Navigator

    flutter子父页面传参,相对前端而言很简单,因为dart是面相对象的语言,可以在导航中通过有参构造传参

    使用Navigator组件,然后使用路由MaterialPageRoute传递参数

    父》子,  子》父

  1.    final result = await Navigator.push(
  2. context,
  3. MaterialPageRoute(
  4. builder: (context) => new OtherPage(param: param),
  5. ));
  1. Navigator.pop(context,'$result'); //xxx就是返回的参数

    方式二:事件监听传值

    使用eventBus,  import 'package:event_bus/event_bus.dart';

    1创建事件

  1. class OnTapEvent {
  2. Map data;
  3. OnTapEvent (this.data);
  4. }

    2发出事件 eventBus.fire(new OnTapEvent());

    3监听事件

  1. eventBus.on<OnTapReportEvent>()
  2. .listen((OnTapEvent data) {
  3. //TODO
  4. });

  9.移动平台中启动URL

    打开默认浏览器,或跳转其他页面

    https://pub.dartlang.org/packages/url_launcher#-readme-tab-

  10.顶部,底部TabBar控件

    https://juejin.im/post/5b685a2a5188251ac22b71c0

  11.LocalStorage

    持久化到手机

    https://pub.dartlang.org/packages/shared_preferences

  12.dio是一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时等...

    https://github.com/flutterchina/dio/blob/flutter/README-ZH.md

  13.升级flutter SDK

    https://flutter.io/docs/development/tools/sdk/upgrading

Flutter学习笔记与整合的更多相关文章

  1. SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传

    SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...

  2. Flutter学习笔记(3)--Dart变量与基本数据类型

    一.变量 在Dart里面,变量的声明使用var.Object或Dynamic关键字,如下所示: var name = ‘张三’: 在Dart语言里一切皆为对象,所以如果没有将变量初始化,那么它的默认值 ...

  3. Flutter学习笔记(4)--Dart函数

    如需转载,请注明出处:Flutter学习笔记(4)--Dart函数 Dart是一个面向对象的语言,所以函数也是对象,函数属于Function对象,函数可以像参数一样传递给其他函数,这样便于做回调处理: ...

  4. Flutter学习笔记(5)--Dart运算符

    如需转载,请注明出处:Flutter学习笔记(5)--Dart运算符 先给出一个Dart运算符表,接下来在逐个解释和使用.如下:                            描述       ...

  5. Flutter学习笔记(6)--Dart异常处理

    如需转载,请注明出处:Flutter学习笔记(6)--Dart异常处理 异常是表示发生了意外的错误,如果没有捕获异常,引发异常的隔离程序将被挂起,并且程序将被终止: Dart代码可以抛出并捕获异常,但 ...

  6. Flutter学习笔记(8)--Dart面向对象

    如需转载,请注明出处:Flutter学习笔记(7)--Dart异常处理 Dart作为高级语言,支持面向对象的很多特性,并且支持基于mixin的继承方式,基于mixin的继承方式是指:一个类可以继承自多 ...

  7. Flutter学习笔记(9)--组件Widget

    如需转载,请注明出处:Flutter学习笔记(9)--组件Widget 在Flutter中,所有的显示都是Widget,Widget是一切的基础,我们可以通过修改数据,再用setState设置数据(调 ...

  8. Flutter学习笔记(10)--容器组件、图片组件

    如需转载,请注明出处:Flutter学习笔记(10)--容器组件.图片组件 上一篇Flutter学习笔记(9)--组件Widget我们说到了在Flutter中一个非常重要的理念"一切皆为组件 ...

  9. Flutter学习笔记(11)--文本组件、图标及按钮组件

    如需转载,请注明出处:Flutter学习笔记(10)--容器组件.图片组件 文本组件 文本组件(text)负责显示文本和定义显示样式,下表为text常见属性 Text组件属性及描述 属性名 类型 默认 ...

随机推荐

  1. oh-my-zsh的安装与基本配置

    1. 准备工作 安装需要用到:wget curl git zsh 官网:http://ohmyz.sh/ GitHub主页:https://github.com/robbyrussell/oh-my- ...

  2. 关于next.js中的css

    css进行了全局和局部的限制 export default () => ( <div className='hello'> <p>Hello World</p> ...

  3. 【题解】亚瑟王 HNOI 2015 BZOJ 4008 概率 期望 动态规划

    传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4008 一道不简单的概率和期望dp题 根据期望的线性性质,容易想到,可以算出每张卡的期望伤害, ...

  4. mac java jdk 安装删除

    安装: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下载安装双击安装 卸载: ...

  5. uwsgi多进程配合kafka-python消息无法发送

    在工作中,使用uwsgi部署项目,其中uwsgi设置为多进程,并且python中使用了kafka-python模块作为生产者不断产生数据,但上线不久后几乎所有的生产者消息都报:KafkaTimeout ...

  6. java的排序类 Collections

    场景:比如说有一个List<Student> 里面有许多学生 我们想让这些学生按照年龄的大小排序 我们可以用java自带的 java.util.Collections 工具类来实现 Col ...

  7. JavaScript中的栈和堆内存,作用域

    1.栈 stack”和“堆 heap”            简单的来讲,stack上分配的内存系统自动释放,heap上分配的内存,系统不释放,哪怕程序退出,那一块内存还是在那里.stack一般是静态 ...

  8. 部署flask

    部署 当我们执行下面的hello.py时,使用的flask自带的服务器,完成了web服务的启动.在生产环境中,flask自带的服务器,无法满足性能要求,我们这里采用Gunicorn做wsgi容器,来部 ...

  9. 骨骼动画的原理及在Unity中的使用

    制作骨骼动画 我们看看这几步操作后,我们得到了那些数据: 1.每个皮肤顶点的初始世界坐标. 2.每个骨骼关节顶点的初始世界坐标. 3.每个顶点被骨骼顶点的影响信息. 4.骨骼如何移动. 骨骼动画原理 ...

  10. gcc和gdb使用笔记

    gcc: http://wiki.ubuntu.org.cn/Gcchowto gdb: http://wiki.ubuntu.org.cn/%E7%94%A8GDB%E8%B0%83%E8%AF%9 ...