文章目录 1.程序入口2.路由页面创建3.主页面创建4.主界面Home页5.按钮点击事件6.列表界面7.最终效果预览 学习Flutter将近2周了,正好朋友有个Flutter的需求,帮忙做个Demo,感觉最近已经有点入门了,答应了下来,功能主要是做几个按钮,每个按钮对应列表、复选框、弹框等功能。既
Dart语言基础学习日记 基本语法数据类型3.Boolean(布尔类型)4.List(列表类型)5.Set(集合类型)6.Map(映射类型) 基本语法 数据类型 3.Boolean(布尔类型) Dart中表示布尔类型的数据用bool声明,它只有true(真)和false(假)两个值。 var numberStr = 0; print(numberStr <= 0
在flutter for web开发过程中,常常不可避免的需要用到dart:html包,由于笔者正在开发的项目是一个跨app和web平台的项目,并且写在同一个项目工程文件夹,于是打包编译成app时就遇到了找不到dart:html包的错误。这是因为编译app时不会引入html包。记录下解决办法。 按需导包 import 'pa
再开发过程中我们经常会使用到WebSocket,而插件库为我们提供了一个使用非常方便的插件 web_socket_channel 我们需要根据自己的Flutter 版本选择对应的即可 web_socket_channel: ^1.1.0 在pubspec.yaml中我们引入,然后pub get 一下 pub get 到此就完成插件的引用。下面就是使用了
Flutter-dart-Android studio 安装(由于自用,所以本文可能毫无逻辑) dart安装 直接点击安装即可,自动配置环境变量,安装完毕测试: Flutter安装 1.从官方中文网下载SDK包 2.解压并打开到bin目录,复制路径添加环境变量 在菜单栏输入env,快速进入到编辑环境变量。 点
# 邂逅 很多情景需要使用 package:flutter_web_ui/ui.dart 或者 dart:ui ,比如显示一个网页: import 'package:flutter_web_ui/ui.dart' as ui; // 或者 import 'dart:ui' as ui; ui.platformViewRegistry.registerViewFactory( 'maphtml', (int
先强调一下,很多问题可以使用reStart更新试一下下!!!!! 使用flutter_screenutil 报错 Looking up a deactivated widget's ancestor is unsafe. The following assertion was thrown while dispatching notifications for SwiperController: Looking up a deactivated widget's anc
# 前言 我们在跨平台项目里 import 'dart:html' 会有警告,大致情况如下,直接编译出 web 没有问题 但是跑 android/ios 就不行了,会在编译阶段 error,效果大致如下: # 解决 Google 官方的意思是要做区分,我们先看看官方的要求: 那么如何做区分呢?可以参考下面这个方法: import 'xxx'
首先需要配置 android\app\src\main\AndroidManifest.xml //开启读写权限 <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permiss
此篇文章只讨论跨平台技术: 你是否掌握了大部分Android开发需要的知识点呢? 你是否完整的看完过一本Android基础入门的书呢? 你的技术栈是否还是片面的一角? Kotlin Multiplatform Mobile ?jetpack 中的 Compose Multiplatform ?还是使用Dart 的 flutter ?还是选择html的方式 RN/Cor
一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络,希望未来技术之巅上有你们也有我。 1.修改一个BUG。当确单页面没有地址的
需要用到的组件依赖等,通过 ViewService 标准化调用。 ``` 比如一个典型的符合 View 签名的函数![](https://img.alicdn.com/tfs/TB1ymUNCgHqK1RjSZFPXXcwapXa-1198-1098.png) ``` 关于 Effect Effect 是对非修改数据行为的标准定义,它是一个函数签名: (Context, Action) =>
新增一个城市选择的页面在城市选择页面,点击城市,跳转到对应城市天气的页面 1. 创建城市选择页面 在Android中新建一个页面,需要用Activity,在iOS中需要用ViewController,但在Flutter中,新建一个页面只需要用Widge就行,所以我们新建一个CityWidget.dart,CityWidget是一个ListView,从
原文链接 原文链接 Preface 最近在做一个app,以后续用来找工作可以拿出来看看。 试试自己到产品设计能力,前后端能力等等。 中间遇到到一些有值得记录的点全部记录在此。 Content json - model 本地 json 与 model 互转,主要用到了 json_serializiable json_annotation build_runner
可以得到现在的时间日期,也可以进行日期的比较,还可以判断几天之后多少天等之类的情况 var now = DateTime.now(); var berlinWallFell = DateTime.utc(1989, 11, 9); var moonLanding = DateTime.parse("1969-07-20 20:18:04Z"); / var now = DateTime.now(); var sixtyDaysFr
内存对象管理大致分两部分,一个是iOS的引用计数销毁机制,一个是垃圾回收机制,最近在学习flutter,Dart语言的内存管理和Java他们一样是垃圾回收,记录一下,以便之后查看。 在学习Flutter的过程中,我们知道Widget只是最终渲染对象(RenderObject)的配置文件,它会在build的时候频繁的
背景介绍 原生开发 VS 跨平台技术 原生应用程序是指某一个移动平台(比如iOS或安卓)所特有的应用,使用相应平台支持的开发工具和语言,并直接调用系统提供的SDK API。比如Android原生应用就是指使用Java或Kotlin语言直接调用Android SDK开发的应用程序;而iOS原生应用就是指通过Objectiv
首先看下我们的泛型类 class BaseBean<T> { late String msg; late int code; late T data; } T不能加?号弄成空的。。不知道为啥唉 解析Dio返回的String数据 Map<String, dynamic> jsonData = jsonDecode(response.data); var bean = BaseBean<T>(); bean.m
import 'package:flutter/material.dart'; import 'tabs/Home.dart'; import 'tabs/Setting.dart'; import 'tabs/Category.dart'; class Tabs extends StatefulWidget { Tabs({Key? key}) : super(key: key); @overri
异步任务 Dart 是单线程执行任务,支持异步操作 1.Isolate 2.Future Isolate 通过lsolate实现异步操作 void main() { //将消息接收器中配合的发送器传给isolate Isolate.spawn(entryPoint, "发送的消息"); Isolate.spawn(entryPoint, "发送的消息2"); Isolate.spawn
先上代码 main.dart文件 然后就是往main.dart文件的 body填充的widget fragment_page.dart 就两个文件,文字描述难知其意,见如下图,Demo有两个页面,一个是main.dart,它的body能够根据下方的按钮选择填充的布局。 当点击消息,则body会加载消息界面,点击联系人则加载联系人界面,非常
void main(List<String> arguments) { print(NullSafe().setValue(1)); NullSafe().printName(); // 同时给多个变量初始化并赋值,第一个变量为null var name, age = 28; print('name: $name, age: $age'); // 数组拆包 var list = [ 9, if (name == null)
一、Dart变量常量及命名规则 Dart 变量: dart是一个强大的脚本类语言,可以不预先定义变量类型 ,自动会类型推倒 dart中定义变量可以通过var关键字可以通过类型来申明变量 var str='this is var'; String str='this is var'; int str=123; 注意: var 后就不要写类型 , 写了类型
先上几个必上的网站: 官网: https://flutter.cn/docs/get-started/install/windows 中文资源网(毕竟中文母语,看着轻松): https://flutter.cn 实战教程: https://book.flutterchina.club 少不了dart: - https://dart.cn 选择开发环境: vscode + android studio(必装) 官网
1. 抽象类 1. abstract定义抽象类 抽象类中有抽象方法,子类必须包含该方法 abstract class Animal{ eat(); //抽象方法 run(); //抽象方法 printInfo(){ print('我是一个抽象类里面的普通方法'); } } class Dog extends Animal{ @override eat()