【Flutter】常用样式、方法、组件(长期更新中)

一、样式设置

  1. 设置颜色透明度:color: Color(0xff4B9E32).withOpacity(0.08)

二、常用方法

  1. 数组排序:list.sort();
dart 复制代码
**升序**:(obj1, obj2) => obj1.compareTo(obj2)
**降序**:(obj1, obj2) => obj2.compareTo(obj1)

obj1.compareTo(obj2)
如果obj1< obj2,返回< 0
如果obj1= obj2,返回值=0
如果obj1>obj2,返回值>0
  1. 动态获取类实例(model)的属性
dart 复制代码
//先转换成map,再获取值
widget.optionList[index].toJson()[widget.field]
  1. 收起软键盘:FocusManager.instance.primaryFocus.unfocus();
  2. color数值转换:从css颜色到dart颜色(从#AABBCC 转换 Color(0xFF42A5F5))
html 复制代码
map['color']=Color(int.parse((element['iconColor'].substring(1, 7)), radix: 16) + 0xFF000000)
  1. 创建多行字符串:使用三个单引号或双引号,会保留多行字符串格式
dart 复制代码
String e = '''asd
     fdsd
       fff
    
    ''';
    String f = """ 1
    2
    3
    4
    """;
  1. 使用r创建原始字符串,字符串中的特殊字符不会被转译,而被直接原样输出
dart 复制代码
String str1=r'Hello \n  World' 
  1. 设置全局context:final GlobalKey<NavigatorState> navigatorKey = new GlobalKey<NavigatorState>();,通过 navigatorKey获取

三、组件类

  1. 添加悬浮按钮:Stack
    在任意组件中添加悬浮按钮,类似图片右上角删除按钮
dart 复制代码
Stack(
        children: [
          Container(
              alignment: Alignment.center,
              child: Positioned(
                child: Icon(Icons.remove_circle,color: Colors.red,size: 20,),//悬浮的组件
                top: 0,
                right: 0,
              )
          )
        ]

    )

四、一些厉害的工具博客收藏

  1. 模拟器设置
相关推荐
ALLIN7 小时前
Flutter 三种方式实现页面切换后保持原页面状态
flutter
Dabei8 小时前
Flutter 国际化
flutter
Dabei8 小时前
Flutter MQTT 通信文档
flutter
Dabei11 小时前
Flutter 中实现 TCP 通信
flutter
孤鸿玉11 小时前
ios flutter_echarts 不在当前屏幕 白屏修复
flutter
前端 贾公子13 小时前
《Vuejs设计与实现》第 16 章(解析器) 上
vue.js·flutter·ios
tangweiguo030519871 天前
Flutter 数据存储的四种核心方式 · 从 SharedPreferences 到 SQLite:Flutter 数据持久化终极整理
flutter
0wioiw01 天前
Flutter基础(②④事件回调与交互处理)
flutter
肥肥呀呀呀1 天前
flutter配置Android gradle kts 8.0 的打包名称
android·flutter
吴Wu涛涛涛涛涛Tao1 天前
Flutter 实现「可拖拽评论面板 + 回复输入框 + @高亮」的完整方案
android·flutter·ios