• [Dart] Flutter开发中的几个常用函数


    几个Flutter开发中的常用函数

    /** 返回当前时间戳 */
      static int currentTimeMillis() {
        return new DateTime.now().millisecondsSinceEpoch;
      }
    
      /** 复制到剪粘板 */
      static copyToClipboard(final String text) {
        if (text == null) return;
        Clipboard.setData(new ClipboardData(text: text));
      }
    
      static const RollupSize_Units = ["GB", "MB", "KB", "B"];
      /** 返回文件大小字符串 */
      static String getRollupSize(int size) {
        int idx = 3;
        int r1 = 0;
        String result = "";
        while (idx >= 0) {
          int s1 = size % 1024;
          size = size >> 10;
          if (size == 0 || idx == 0) {
            r1 = (r1 * 100) ~/ 1024;
            if (r1 > 0) {
              if (r1 >= 10)
                result = "$s1.$r1${RollupSize_Units[idx]}";
              else
                result = "$s1.0$r1${RollupSize_Units[idx]}";
            } else
              result = s1.toString() + RollupSize_Units[idx];
            break;
          }
          r1 = s1;
          idx--;
        }
        return result;
      }
    /** 返回两个日期相差的天数 */
      static int daysBetween(DateTime a, DateTime b, [bool ignoreTime = false]) {
        if (ignoreTime) {
          int v = a.millisecondsSinceEpoch ~/ 86400000 -
              b.millisecondsSinceEpoch ~/ 86400000;
          if (v < 0) return -v;
          return v;
        } else {
          int v = a.millisecondsSinceEpoch - b.millisecondsSinceEpoch;
          if (v < 0) v = -v;
          return v ~/ 86400000;
        }
      }
    /** 获取屏幕宽度 */
      static double getScreenWidth(BuildContext context) {
        return MediaQuery.of(context).size.width;
      }
    
      /** 获取屏幕高度 */
      static double getScreenHeight(BuildContext context) {
        return MediaQuery.of(context).size.height;
      }
    
      /** 获取系统状态栏高度 */
      static double getSysStatsHeight(BuildContext context) {
        return MediaQuery.of(context).padding.top;
      }
  • 相关阅读:
    TPLINK GPL code 简要分析
    Openwrt 初探
    物联网-手机远程控制家里的摄像头(3)
    物联网-手机远程控制家里的摄像头(2)
    lumia 520无法开机
    树莓派无法驱动移动硬盘
    Cannot Change Opencv Webcam Setting
    IIC协议理解(转)
    应用调试(六)记录回放输入子系统
    应用调试(五)侵入式SWI
  • 原文地址:https://www.cnblogs.com/yangyxd/p/9168244.html
Copyright © 2020-2023  润新知