Flutter 的异步机制Future
摘要:Dart是一个单线程语言,可以理解成物理线路中的串联,当其遇到有延迟的运算(比如IO操作、延时执行)时,线程中按顺序执行的运算就会阻塞,用户就会感觉到卡顿,于是通常用异步处理来解决这个问题。 Dart异步编程有两种方式:Future和Stream Future相当于40米大砍刀,Stream相当于一
阅读全文
posted @
2019-08-02 14:09
JoeYoung
阅读(1131)
推荐(0) 编辑
Flutter dio伪造请求头获取数据
摘要:在很多时候,后端为了安全都会有一些请求头的限制,只有请求头对了,才能正确返回数据。这虽然限制了一些人恶意请求数据,但是对于我们聪明的程序员来说,就是形同虚设。下面就以极客时间为例,讲一下通过伪造请求头,来获取极客时间首页主要数据。(不保证接口和安全措施一直可用哦) 查看极客时间的数据端口 如果你是一
阅读全文
posted @
2019-08-01 09:47
JoeYoung
阅读(2906)
推荐(0) 编辑
Flutter 获取网络数据及渲染列表
摘要:还是通过Dio包调用远程接口获取数据,这里返回值为一个Future,这个对象支持一个等待回掉方法then。 示例代码如下: 效果图:
阅读全文
posted @
2019-07-31 09:53
JoeYoung
阅读(4130)
推荐(0) 编辑
Flutter 移动端屏幕适配方案和制作
摘要:flutter_screenutil插件 flutter 屏幕适配方案,让你的UI在不同尺寸的屏幕上都能显示合理的布局! 注意:此插件仍处于开发阶段,某些API可能尚未推出。 安装依赖: 安装之前请查看最新版本 在每个使用的地方导入包: 属性 初始化并设置适配尺寸及字体大小是否根据系统的“字体大小”
阅读全文
posted @
2019-07-29 15:52
JoeYoung
阅读(5628)
推荐(0) 编辑
Flutter Swiper制作轮播效果
摘要:1、引入flutter_swiper插件 flutter最强大的siwiper, 多种布局方式,无限轮播,Android和IOS双端适配. Flutter_swiper的GitHub地址:https://github.com/best-flutter/flutter_swiper 了解flutter
阅读全文
posted @
2019-07-29 09:53
JoeYoung
阅读(5525)
推荐(0) 编辑
Flutter 拖拽控件Draggable
摘要:Flutter提供了强大的拖拽控件,可以灵活定制,并且非常简单。下面作一个拖拽的案例。 Draggable Widget Draggable控件负责就是拖拽,父层使用了Draggable,它的子元素就是可以拖动的,子元素可以实容器,可以是图片。用起来非常的灵活。 参数说明: data: 是要传递的参
阅读全文
posted @
2019-07-26 10:05
JoeYoung
阅读(3210)
推荐(0) 编辑
Flutter 轻量级的ToolTip控件
摘要:轻提示的效果在应用中是少不了的,其实Flutter已经准备好了轻提示控件,这就是toolTip。 轻量级操作提示 其实Flutter中有很多提示控件,比如Dialog、Snackbar和BottomSheet这些操作都是比较重量级的,存在屏幕上的时间较长或者会直接打断用户的操作。 当然并不是说这些控
阅读全文
posted @
2019-07-25 16:13
JoeYoung
阅读(1332)
推荐(0) 编辑
Flutter 右滑返回上一页
摘要:在苹果手机上有一种才操作叫做右滑返回上一页,一些不错的应用都有类似的操作,随着苹果手机越来越多,这种操作开始普遍开来,在安卓手机上也开始使用。 Cupertino UI 其实早都知道Flutter有两套UI模板,一套是material,另一套就是Cupertino。Cupertino主要针对的的就是
阅读全文
posted @
2019-07-25 10:58
JoeYoung
阅读(3776)
推荐(0) 编辑
Flutter参数的传递和接收
摘要:上次只写了方法和参数,这次写了完整的示例,页面间参数的传递和接收的示例。 1、参数传递 用在程序上解释就是比如你进入一个商品选择列表,当你想选择一个商品的具体信息的时候,你就要传递商品编号,详细页面接受到编号后,显示出不同的内容。 声明数据结构类 Dart中可以使用类来抽象一个数据,比如我们模仿一个
阅读全文
posted @
2019-07-25 09:50
JoeYoung
阅读(18930)
推荐(1) 编辑
Flutter的闪屏动画案例AnimationController
摘要:打开一个APP,经常会看到精美的启动页,这种启动页也称为闪屏动画。它是从无到有有一个透明度的渐变动画的。图像展示完事后,才跳转到用户可操作的页面。 AnimationController AnimationController是Animation的一个子类,它可以控制Animation, 也就是说它
阅读全文
posted @
2019-07-24 10:06
JoeYoung
阅读(1674)
推荐(0) 编辑
Flutter 贝塞尔曲线切割
摘要:现在人们对于网站的美感要求是越来越高了,所以很多布局需要优美的曲线设计。当然最简单的办法是作一个PNG的透明图片,然后外边放一个Container.但其内容如果本身就不是图片,只是容器,这种放入图片的做法会让包体变大。其实我们完全可以使用贝塞尔曲线进行切割。 ClipPath 路径裁切控件 clip
阅读全文
posted @
2019-07-24 09:21
JoeYoung
阅读(4466)
推荐(0) 编辑
Flutter磨砂玻璃效果制作
摘要:Flutter的Fliter Widget 也是非常强大的,它可以制作出你想要的神奇滤镜效果。下面制作一个毛玻璃效果。 这个和以前的写法都一样,所以就直接贴代码了。 这个代码嵌套很多,所以一定要注意你的代码层次,容易出错的地方就是嵌套错误。这个效果尽量少用,因为测试了一下,它对系统的消耗还是比较大的
阅读全文
posted @
2019-07-23 16:51
JoeYoung
阅读(2495)
推荐(0) 编辑
Flutter酷炫的路由动画效果
摘要:现在Flutter的路由效果已经非常不错了,能满足大部分App的需求,但是谁不希望自己的App更酷更炫那,下面介绍几个酷炫的路由动画。 其实路由动画的原理很简单,就是重写并继承PageRouterBuilder这个类里的transitionsBuilder方法。 不过这个方法还是有很多写法的,通过写
阅读全文
posted @
2019-07-23 11:32
JoeYoung
阅读(5893)
推荐(1) 编辑
Flutter中的浮动按钮FloatingActionButton 及融合底部工具栏
摘要:FloatingActionButton 简称 FAB,从字面理解可以看出,它是“可交互的浮动按钮”,其实在Flutter默认生成的代码中就有这家伙,只是我们没有正式的接触。 一般来说,它是一个圆形,中间放着图标,会优先显示在其他Widget的前面。一般可以实现浮动按钮,也可以实现类似闲鱼 app
阅读全文
posted @
2019-07-23 09:33
JoeYoung
阅读(8151)
推荐(1) 编辑
Flutter之ExpansionTile组件
摘要:ExpansionTile组件 ExpansionTile Widget就是一个可以展开闭合的组件,常用的属性有如下几个。 title:闭合时显示的标题,这个部分经常使用Text Widget。 leading:标题左侧图标,多是用来修饰,让界面显得美观。 backgroundColor: 展开时的
阅读全文
posted @
2019-07-22 14:55
JoeYoung
阅读(3998)
推荐(0) 编辑
Flutter 实现简单搜索功能
摘要:先建立一个主文件,继承StatelessWidget,然后在home属性中加入SearchBarDemo,这是一个自定义的Widget,主要代码都在这个文件中。 然后是搜索页面,里面包含数据及搜索功能。 工作中这些数据是后台传递给我们,或者写成配置文件的,这里我们就以List的方式代替了。我们在这个
阅读全文
posted @
2019-07-22 11:23
JoeYoung
阅读(9432)
推荐(0) 编辑
Flutter Window环境运行(VSCode + 单独运行Android 虚拟机)
摘要:官网以及很多网上文章的开发都是基于Android ,因为它能创建不同类型移动设备虚拟机。但个人始终觉得它太庞大,启动慢耗资源,但我们使用Flutter又离不开虚拟机。 经过实践,现在能成功的单独启动移动设备虚拟机使用VSCODE进行开发了。 1、各种安装和配置 按着官网文档设置环境变量,安装JDK,
阅读全文
posted @
2019-07-22 09:19
JoeYoung
阅读(3665)
推荐(0) 编辑
Flutter之切换导航TabBar组件
摘要:TabController 这是Tab页的控制器,用于定义Tab标签和内容页的坐标,还可配置标签页的切换动画效果等。 TabController的创建有两种形式,一种是使用系统的DefaultTabController,第二种是自己定义一个TabController实现SingleTickerPro
阅读全文
posted @
2019-07-19 16:05
JoeYoung
阅读(4115)
推荐(0) 编辑
Flutter之Dio引入和简单的Get/Post请求
摘要:先在pubspec.yaml中引入Dio包如图所示 认识Dio库:dio是一个dart的 http请求通用库,目前也是大陆使用最广泛的库,国人开发,完全开源。 flutter的插件包管理:学了引入dio包,并简单的学习了pubspec.yaml的结构和编写注意事项。 get请求的编写:我们以一个充满
阅读全文
posted @
2019-07-19 14:49
JoeYoung
阅读(14869)
推荐(1) 编辑
Flutter 路由 页面间跳转和传参 返回
摘要:Navigator Navigator用来管理堆栈功能(即push和pop),在Flutter的情况下,当我们导航到另一个屏幕时,我们使用Navigator.push方法将新屏幕添加到堆栈的顶部。当然,这些pop方法会从堆栈中删除该屏幕。 在push的时候使用自定义方法构建一个路由 这种方式可以传递
阅读全文
posted @
2019-07-18 17:10
JoeYoung
阅读(5440)
推荐(0) 编辑