Flutter
Flutter相关(安卓)
豆豆菌
这个作者很懒,什么都没留下…
展开
-
flutter 运行windows项目时报错 Bad UTF-8 encoding (U+FFFD; REPLACEMENT CHARACTER)
flutter工程在windows平台运行时,可能会报错Bad UTF-8 encoding (U+FFFD; REPLACEMENT CHARACTER) found while decoding string解决办法从如下里链接下载vswhere.exe,替换本地c盘目录下的这个exe文件即可chttps://github.com/microsoft/vswhere/releases...原创 2022-05-18 18:39:30 · 1574 阅读 · 0 评论 -
Flutter RefreshIndicator高度不够时不能下拉刷新
当列表内数据过少时listview某些嵌套情况下可能不会滚动,数据多时,超出一个屏幕的高度时,不会出现问题。RefreshIndicator是根据下拉偏移量触发onRefresh操作,不能滚动自然不能下拉刷新。解决方案:在listview的physice属性赋值new AlwaysScrollableScrollPhysics(),保持listview任何情况都能滚动,问题解决。...原创 2021-06-25 11:44:09 · 1285 阅读 · 1 评论 -
Flutter BottomNavigationBarItem 标签切换时刷新 或 不刷新页面
页面:有3个底部标签 使用BottomNavigationBarItem实现需求1:每次切换标签时需要刷新页面数据需求2:进入页面时一次将3个页面的数据都加载完成需求1 解决方法:body 使用:_children[页面序号] 例:body: _children[widget.currentIndex],class Home extends StatefulWidget { int currentIndex; Home({Key key, this.curren...原创 2020-10-28 14:20:46 · 2212 阅读 · 0 评论 -
flutter appbar 禁止显示返回按钮
automaticallyImplyLeading: true,果没有leading,automaticallyImplyLeading为true,就会默认返回箭头如果 没有leading 且为false,空间留给title如果有leading,这个参数就无效了原创 2020-10-15 15:19:53 · 1029 阅读 · 0 评论 -
Flutter 获取对象类型
假设上一个方法返回的对象是dynamic,我们需要知道dynamic的具体类型好做对应的处理;获取对象类型代码://例:dynamic testInfo = Test.Test(); //返回值为dynamic 类型的方法testInfo.runtimeType; //获取testInfo的类型获取到对象类型后和需要的对象类型进行比较即可://例:if(testInfo.runtimeType == Widget){ print("变量testInfo 类型是W原创 2020-09-29 10:21:38 · 4558 阅读 · 0 评论 -
Flutter 全局去除水波纹
1、新建名为NoSplashFactory 的class,将如下代码拷入:import 'package:flutter/material.dart';/* * 去除水波纹*/class NoSplashFactory extends InteractiveInkFeatureFactory { const NoSplashFactory(); InteractiveInkFeature create({ @required MaterialInkController cont原创 2020-09-24 10:32:16 · 1435 阅读 · 0 评论 -
Flutter入门
Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。目录结构目录结构如下图:目前着重需要注意一下几个文件夹文件夹作用androidandroid平台相关代码iosios平台相关代码libflutter相关代码,我们主要编写的代码就在这个文件夹test用于存放测试代码pubspec.yaml配置文件,一般存放一些第三方的依赖。lib中只有一个main.dart文件。这个文件是入口文件,其中的ma原创 2020-07-13 16:37:41 · 232 阅读 · 0 评论 -
dart入门
Dart是Google发布的一门开源编程语言Dart是面向对象的、类定义的、单继承的语言。变量声明var类似于JavaScript中的var,它可以接收任何类型的变量,但最大的不同是Dart中var变量一旦赋值,类型便会确定,则不能再改变其类型。之所以有此差异是因为Dart本身是一个强类型语言,任何变量都是有确定类型的,在Dart中,当用var声明一个变量后,Dart在编译时会根据第一次赋值数据的类型来推断其类型,编译结束后其类型就已经被确定,而JavaScript是纯粹的弱类型脚本..原创 2020-07-13 15:01:41 · 147 阅读 · 0 评论 -
dart解决大量异步代码,回调地狱(Callback Hell)
如果代码中有大量异步逻辑,并且出现大量异步任务依赖其它异步任务的结果时,必然会出现Future.then回调中套回调情况。举个例子,比如现在有个需求场景是用户先登录,登录成功后会获得用户ID,然后通过用户ID,再去请求用户个人信息,获取到用户个人信息后,为了使用方便,我们需要将其缓存在本地文件系统,代码如下:问题现状想直接看解决请下拉//先分别定义各个异步任务Future<String> login(String userName, String pwd){ ... /原创 2020-07-13 11:28:09 · 1004 阅读 · 0 评论 -
Flutter 资料整理
官网地址:https://flutter.cn/推荐阅读:https://www.jianshu.com/p/de459708d9ed原创 2020-07-10 14:24:42 · 129 阅读 · 0 评论 -
flutter项目Android打包命令
确保使用命令前已经进行过App签名等操作如果命令一打包出的安装包(apk)安装后闪退,那请使用命令二打包命令一、flutter build apk命令二、flutter build apk --target-platform android-arm64...原创 2019-06-28 17:26:26 · 949 阅读 · 0 评论 -
flutter 沉浸式状态栏修改字体颜色
可能部分App页面背景色是白色,导致沉浸式状态栏的文字颜色与背景色一致,从而让文字无法看清。解决办法:使用AnnotatedRegion,可以使得状态栏颜色改变,有dark和light两种return AnnotatedRegion<SystemUiOverlayStyle>( value: SystemUiOverlayStyle.dark,//dark或light child: Material( child:Scaffold(),原创 2020-07-06 11:41:36 · 1261 阅读 · 0 评论 -
flutter 安卓顶部沉浸式状态栏
App状态栏在非沉浸状态下会有一个灰色的背景色,添加过沉浸后会更加美观如下图所示:1、添加代码void main(){ realRunApp(); if (Platform.isAndroid) { // 以下两行 设置android状态栏为透明的沉浸。写在组件渲染之后,是为了在渲染后进行set赋值,覆盖状态栏,写在渲染之前MaterialApp组件会覆盖掉这个值。 SystemUiOverlayStyle systemUiOverla...原创 2020-07-06 10:51:56 · 904 阅读 · 0 评论