Flutter

密码保护:Flutter使用state实现列表单选效果

密码保护:Flutter使用state实现列表单选效果

Flutter使用state实现单选效果 setState(() { sampleData.forEach((element) => element.isSelected = false); sampleData[index].isSelected = true; }); impor

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter事件交互和State管理

密码保护:Flutter事件交互和State管理

Flutter的Widget有Statful(有状态的)和Stateless(无状态的)。比如继承自StatefulWidget的有Checkbox、Radio、Slider、Form等,这些Widget用户都是可以做一些交互的,同样的继承自StatelessWidget的Widget有Text、I

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter中StatefulWidget控件状态管理的两种方式

密码保护:Flutter中StatefulWidget控件状态管理的两种方式

Flutter 有两种状态控件:StatelessWidget、StatefulWidget,对于有可变状态控件的管理,官方文档是写了有3种模式:控件自己管理状态、交给父控件管理状态以及混合管理。 项目说明:两种方式实现一个容器盒子,点击的时候切换颜色和显示内容。我将把这两个盒子做到一个页面,虽然

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter倒计时定时器

密码保护:Flutter倒计时定时器

Timer void countdown() { Timer timer = new Timer(new Duration(seconds: 10), () { // 只在倒计时结束时回调 }); } Timer.periodic 可以创建一个周期性的Timer,并且Timer的t

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter更新showDialog中的内容

密码保护:Flutter更新showDialog中的内容

问题描述 Flutter中使用showDialog或showModalBottomSheet后,通过setState()无法更新当前dialog。其实原因很简单,因为dialog其实是另一个页面,准确地来说是另一个路由,因为dialog的关闭也是通过navigator.pop的,所以地位与当前主页面

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter中showModalBottomSheet点击内容区域自动关闭Dialog解决

密码保护:Flutter中showModalBottomSheet点击内容区域自动关闭Dialog解决

问题描述 Flutter中showModalBottomSheet底部弹框,无论点击阴影区域还是点击内容区域,默认都会导致当前对话框自动关闭。如果想在弹框中停留并进行一些操作,我们需要设置在点击ModalBottomSheet内容区域时不关闭弹框,而是手动点击触发关闭弹框。 解决方案 (1)sho

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter中设置BottomSheet背景色

密码保护:Flutter中设置BottomSheet背景色

BottomSheet底部弹框的背景色与主题的画布底色一致,因此只需修改App主题的canvasColor即可 参考:https://stackoverflow.com/questions/51204179/how-to-change-the-background-color-of-bottomsh

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter接入Facebook和Google等三方登录

密码保护:Flutter接入Facebook和Google等三方登录

Facebook登录 第三方插件:flutter_facebook_login DartPub:https://pub.dartlang.org/packages/flutter_facebook_login Github:https://github.com/roughike/flutter_fa

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter获取屏幕及设备信息

密码保护:Flutter获取屏幕及设备信息

获取状态栏高度 import 'dart:ui'; MediaQueryData.fromWindow(window).padding.top MediaQuery.of(context).padding.top 获取系统默认的AppBar等高度 位于Dart Packag

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter实现SearchBar搜索框效果

密码保护:Flutter实现SearchBar搜索框效果

使用Flutter实现SearchBar搜索框效果 import 'package:flutter/material.dart'; import 'dart:ui'; class SearchBarDemoPage extends StatefulWidg

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter实现Toast效果

密码保护:Flutter实现Toast效果

fluttertoast 目前Flutter官方暂未提供toast工具类,可以利用第三方库fluttertoast Github:https://github.com/PonnamKarthik/FlutterToast DartHub: https://pub.dartlang.org/packa

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter双击退出应用

密码保护:Flutter双击退出应用

WillPopScope 注册一个回调 onWillPop 用来自定义用户对路由的操作 (1)自定义双击退出回调函数 int _lastClickTime = 0; Future<bool> _doubleClickExit() { int nowTime = new DateT

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter页面间跳转和传参Navigator的使用

密码保护:Flutter页面间跳转和传参Navigator的使用

Flutter中的默认导航分成两种,一种是命名的路由,一种是构建路由。 命名路由 (1)需要一开始在创建App时定义 new MaterialApp( .... routes: { "route-name": (BuildContext context) =&g

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter中自动执行onTap事件解决

密码保护:Flutter中自动执行onTap事件解决

错误写法: GestureDetector( onTap: viewOrderList('all'), child: ... ), 正确写法: GestureDetector( onTap: () => viewOrderList('all&#039

Joe.Ye Joe.Ye 2023-03-17
0 0 0
密码保护:Flutter TextField设置只读不可编辑

密码保护:Flutter TextField设置只读不可编辑

参考:https://stackoverflow.com/questions/44490622/disable-a-text-edit-field-in-flutter TextField( enableInteractiveSelection: false, onTap: () { Foc

Joe.Ye Joe.Ye 2023-03-17
0 0 0
1 2 3 6