Flutter 从 0 到 1
Flutter 学习资料
jia635
这个作者很懒,什么都没留下…
展开
-
Flutter 开发Windows桌面APP
如果配置过Flutter命令行环境,先命令行设置桌面模式可用flutter config --enable-windows-desktop #to enable Windows设置之后Windows就变为可选工程创建完之后可以看到这样的结构比Android,iOS多一个Windows文件目录,同时测试机有Windows可选,点run就可以运行。如果点run按钮之后报Unable to find suitable Visual Studio toolchain. Please原创 2021-07-02 10:06:36 · 2501 阅读 · 1 评论 -
Flutter设置(appBar)状态栏背景色,状态栏字体
Container( height: ScreenUtil.screenHeight, color: Color(0xFF007AFF), child: AnnotatedRegion<SystemUiOverlayStyle>( // 设置 AppBar 颜色属性 value:SystemUiOverlayStyle.light, ), );如 AnnotatedRegion 下 value ...原创 2021-06-30 10:14:30 · 6495 阅读 · 1 评论 -
Flutter 输入框(TextField)被键盘遮挡两种解决方案
方案一:如果没有ScrollView或者ListView等可滚动空间包裹,则可以通过padding设置实现键盘不被遮挡问题Padding( padding: EdgeInsets.only( bottom: MediaQuery.of(context).viewInsets.bottom ), child: TextField( ))MediaQuery.of(context).viewInsets.bottom 为键盘弹出时键盘高度,如果上面代码段被可滚动w...原创 2021-06-28 18:44:46 · 12025 阅读 · 4 评论 -
iOS 接入Flutter禁用右滑返回关闭页面
List list = new List(); list.add(true); list.add(100); list.add('a'); list.add("华为"); list.add("zhongxing"); list[0]= "中国"; //修改值 print(list); //打印结果 [true, 100, a, 华为] print(list[0...原创 2021-06-22 10:00:03 · 3991 阅读 · 0 评论 -
Flutter Dio在 Charles等 抓包工具设置配置
前些天提测新业务,QA反馈Flutter 页面不能抓包,以前看数据信息都是通过log收集,没有单独通过抓包查看数据,对QA来说不能抓包确实是问题。查了一下发现Dio原创 2021-06-11 19:07:53 · 3151 阅读 · 3 评论 -
Flutter 文件之间引用(路径,方法等不存在)报错但不影响编译运行问题
新项目突然出现如图引用 url 中的变量,编译一次之后就出现引用路径不存在的报错,但是不影响整体编译运行,清缓存重启运行之后还有这个问题,刚开始以为是AS 版本问题,就下载了一个Ide然后安装插件编译还是有这个问题就和其它没有报错文件进行比对,最后发现尽然是注释引起的,如图是支持 //xxx注释的,刚开始以为是中文编码引起的报错,改成英文之后确实没有报错了。后来又把 中文 // 注释形式改成 /***xxx*/ 也没有出现报错,所以解决方案可以通过 英语注释或者/***xxx*/ 形式进...原创 2021-06-01 19:33:28 · 1150 阅读 · 2 评论 -
Flutter Dart 报错 Unhandled Exception: type ‘_InternalLinkedHashMap<dynamic, dynamic>‘ is not a subtyp
flutter: [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] #0 JsonConvert._fromJsonSingle (package:flutter_module_inapplication/generated/json/base/json_convert_content.dart:36) #1 JsonConvert.fromJsonAsT (package:flutter_module_inapplication.原创 2021-06-01 19:28:49 · 3112 阅读 · 0 评论 -
Flutter 正则表达校验邮箱,电话号,中文等
Flutter 中判断字符串是不是邮箱,电话号,shi'f原创 2021-05-28 19:17:15 · 6503 阅读 · 1 评论 -
Flutter --RichText富文本文字图片渲染及点击事件处理使用
RichText( strutStyle: StrutStyle(forceStrutHeight: true, height: 0.5, leading: 0.7), text: TextSpan( text: "You've earned 5 stocks You've earned 5 stocks", style: styled9Size12, children: [ TextSpan( .原创 2021-05-26 18:53:55 · 3435 阅读 · 0 评论 -
Flutter TextField限制输入仅数字,字母,以及数字键盘,搜索完成设置
import 'package:flutter/material.dart';import 'package:flutter/services.dart'; TextField( inputFormatters: [ FilteringTextInputFormatter(RegExp("[a-zA-Z]")),//只允许输入字母 ], ), TextField( inputFormatters: [Fi.原创 2021-05-21 18:34:10 · 6240 阅读 · 0 评论 -
Flutter Could not determine the dependencies of task ‘:xxx:compileDebugAidl‘.
Could not determine the dependencies of task ':share:compileDebugAidl'.> Could not resolve all task dependencies for configuration ':share:debugCompileClasspath'. > Could not resolve androidx.lifecycle:lifecycle-common:{strictly 2.0.0}. Requ...原创 2020-12-31 17:06:06 · 2948 阅读 · 0 评论 -
Flutter Web开发 浏览器运行
新建Flutter 工程,默认只支持Android,iOS,可以通过命令行配置运行Webflutter channel beta先切到Flutter beta版本flutter upgradeflutter config --enable-web运行完--enable-web 命令后重启当前Flutter工程如果配置成功并且电脑上有Chrome浏览器,在可调试工具即可看到Chrome(web),选择Chrome然后运行编译便会打开host的Flutter网页...原创 2020-12-30 16:13:18 · 2443 阅读 · 0 评论 -
Flutter 中常用 Button --禁用、渐变按钮及属性
MaterialButton,FlatButton 没有阴影的Material Design按钮,RaisedButton,OutlineButton共有常用属性color 按钮颜色textColor child为Text 不设置颜色时的字体颜色 splashColor 点击按钮时波浪颜色 disabledColor 按钮被禁用时按钮颜色, 按钮禁用实现,不实现onPressed() 或者 onPressed:null shape .原创 2020-12-28 17:57:19 · 4061 阅读 · 0 评论 -
Flutter 网络请求Json 两种解析(官方+插件)及动态解析
import 'package:flutter/material.dart';import 'package:http/http.dart' as http;class FutureBuilderScreen extends StatefulWidget { FutureBuilderScreen({Key key}) : super(key: key); @override _FutureBuilderScreenState createState() => _FutureBu.原创 2020-12-24 12:57:37 · 2699 阅读 · 0 评论 -
Unhandled Exception: MissingPluginException(No implementation found for method xxx on channel xxx
Flutter 与 Native 进行通信可能遇到Unhandled Exception: MissingPluginException(No implementation found for method xxx ,通信渠道的方法找不到有可能如下问题1.new MethodChannel(flutterEngine.getDartExecutor(), channelName)生成 MethodChannel 时Flutter层和Native 层channelName 字符串不一致...原创 2020-12-18 18:36:20 · 10722 阅读 · 3 评论 -
Flutter 可滚动页面实现
ListView实现上拉刷新下拉加载原创 2020-11-24 09:51:02 · 5778 阅读 · 0 评论 -
Flutter 圆形(头像)图片的 4种实现
一、CircleAvatar从widget名称也可以看出来是实现圆形头像的组件。const CircleAvatar({ Key key, this.child, this.backgroundColor, this.backgroundImage, this.onBackgroundImageError, this.foregroundColor, this.radius, this.minRadius, this.maxR原创 2020-11-09 18:24:45 · 5503 阅读 · 0 评论 -
Flutter自定义View 之 CustomPainter (二) 绘制图片
drawXXXdrawShadow 绘制阴影drawShadow 用于绘制阴影,第一个参数时绘制一个图形 Path,第二个是设置阴影颜色,第三个为阴影范围,最后一个阴影范围是否填充满;canvas.drawShadow( Path() ..moveTo(30.0, 30.0)..lineTo(120.0, 30.0) ..lineTo(120.0, 60.0)..lineTo(30.0, 60.0) ..close(), C...原创 2020-10-10 19:27:03 · 2590 阅读 · 2 评论 -
Flutter 自定义 View 中 CustomPainter (一)
Flutter 提供了与 Android 相似的 Paint 和 Canvas 来实现自定义 View,使应用更方便完善。小菜尝试学习和使用自定义 View。自定义 View 包括 Paint 画笔与 Canvas 画布,两部分缺一不可;两者通过 CustomPainter 衔接使用。需要实现 paint() 绘制方法与 shouldRepaint() 在刷新布局的时是否需要重绘。class PaintCustom extends CustomPainter { ...原创 2020-09-15 19:18:41 · 1345 阅读 · 1 评论 -
Flutter 获取屏幕宽度高度 通知栏高度等屏幕信息
MediaQueryMediaQuery.of(context)包含了一些屏幕的属性:size : 一个包含宽度和高度的对象,单位是dpprint(MediaQuery.of(context).size); //输出: Size(411.4, 683.4)devicePixelRatio : 返回设备的像素密度print(MediaQuery.of(context).devicePixelRatio); //2.625textScaleFactor : 每个逻辑像素...原创 2020-09-10 19:15:31 · 1991 阅读 · 0 评论 -
Flutter 嵌入到原生项目 几种实现方式
环境:Mac + Flutter 1.20.0一、在原来Android Module基础上添加1. 点击File---->New Module--->Flutter Module添加完成Flutter Module之后会自动添加对Flutter的依赖至此就完成了对Flutter 部分的依赖可以进行调试FlutterMain.startInitialization(this);Intent intent1 = new Intent(MainActivity.t原创 2020-08-10 19:46:18 · 2782 阅读 · 2 评论 -
Dart中的final和const 及 ??= 用法
const类中只有静态成员才能用const修饰 const是编译时常量,在编译时值就要确定下来finalfinal常量只能被初始化一次,这个值可以在运行时确定当final修饰的是一个引用时,只是引用的值不能被改变,而引用指向的对象的属性如果不是常量的话是可以被任意改变的 final值必须被初始化,但是这个过程可以必须在构造器的body部分执行之前。可以在声明时,也可以在初始list中初始化Flutter中的 ??= 是在看Flutter源码时发现的,测试发现相当于 if(xxx=.原创 2020-08-26 19:28:24 · 1156 阅读 · 0 评论 -
Flutter 可选参数方法构建
在Flutter 中不存在Java 方法重载概念,类似 test(), test(int a), test(String a) 这种一个类里面多个不同参数形式的形同名称的方法,提供了可选参数构造方法。看Flutter源码比较常见的可选参数形式是大括号 { } 实现的,可以指定具体传递某一个参数。test(int a, {String b, String c}) { // todo}如上面方法,a 是一定要传的参数,b,和c 是可选择的参数,使用的时候可以 test(10,b:"BB..原创 2020-08-25 19:25:03 · 3019 阅读 · 0 评论