李卓原

no message

  1 +<component name="ProjectCodeStyleConfiguration">
  2 + <code_scheme name="Project" version="173">
  3 + <Objective-C-extensions>
  4 + <file>
  5 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Import" />
  6 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Macro" />
  7 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Typedef" />
  8 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Enum" />
  9 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Constant" />
  10 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Global" />
  11 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Struct" />
  12 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="FunctionPredecl" />
  13 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Function" />
  14 + </file>
  15 + <class>
  16 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Property" />
  17 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Synthesize" />
  18 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InitMethod" />
  19 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="StaticMethod" />
  20 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InstanceMethod" />
  21 + <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="DeallocMethod" />
  22 + </class>
  23 + <extensions>
  24 + <pair source="cpp" header="h" fileNamingConvention="NONE" />
  25 + <pair source="c" header="h" fileNamingConvention="NONE" />
  26 + </extensions>
  27 + </Objective-C-extensions>
  28 + </code_scheme>
  29 +</component>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="Encoding">
  4 + <file url="PROJECT" charset="UTF-8" />
  5 + </component>
  6 +</project>
  1 +<component name="libraryTable">
  2 + <library name="Dart Packages" type="DartPackagesLibraryType">
  3 + <properties>
  4 + <option name="packageNameToDirsMap">
  5 + <entry key="analyzer">
  6 + <value>
  7 + <list>
  8 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/analyzer-0.32.4/lib" />
  9 + </list>
  10 + </value>
  11 + </entry>
  12 + <entry key="args">
  13 + <value>
  14 + <list>
  15 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/args-1.5.0/lib" />
  16 + </list>
  17 + </value>
  18 + </entry>
  19 + <entry key="async">
  20 + <value>
  21 + <list>
  22 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/async-2.0.8/lib" />
  23 + </list>
  24 + </value>
  25 + </entry>
  26 + <entry key="boolean_selector">
  27 + <value>
  28 + <list>
  29 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-1.0.4/lib" />
  30 + </list>
  31 + </value>
  32 + </entry>
  33 + <entry key="charcode">
  34 + <value>
  35 + <list>
  36 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.1.2/lib" />
  37 + </list>
  38 + </value>
  39 + </entry>
  40 + <entry key="collection">
  41 + <value>
  42 + <list>
  43 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/collection-1.14.11/lib" />
  44 + </list>
  45 + </value>
  46 + </entry>
  47 + <entry key="convert">
  48 + <value>
  49 + <list>
  50 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/convert-2.0.2/lib" />
  51 + </list>
  52 + </value>
  53 + </entry>
  54 + <entry key="crypto">
  55 + <value>
  56 + <list>
  57 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/crypto-2.0.6/lib" />
  58 + </list>
  59 + </value>
  60 + </entry>
  61 + <entry key="csslib">
  62 + <value>
  63 + <list>
  64 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/csslib-0.14.5/lib" />
  65 + </list>
  66 + </value>
  67 + </entry>
  68 + <entry key="flutter">
  69 + <value>
  70 + <list>
  71 + <option value="d:/flutter/packages/flutter/lib" />
  72 + </list>
  73 + </value>
  74 + </entry>
  75 + <entry key="flutter_test">
  76 + <value>
  77 + <list>
  78 + <option value="d:/flutter/packages/flutter_test/lib" />
  79 + </list>
  80 + </value>
  81 + </entry>
  82 + <entry key="front_end">
  83 + <value>
  84 + <list>
  85 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/front_end-0.1.4/lib" />
  86 + </list>
  87 + </value>
  88 + </entry>
  89 + <entry key="glob">
  90 + <value>
  91 + <list>
  92 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/glob-1.1.7/lib" />
  93 + </list>
  94 + </value>
  95 + </entry>
  96 + <entry key="html">
  97 + <value>
  98 + <list>
  99 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/html-0.13.3+3/lib" />
  100 + </list>
  101 + </value>
  102 + </entry>
  103 + <entry key="http">
  104 + <value>
  105 + <list>
  106 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/http-0.11.3+17/lib" />
  107 + </list>
  108 + </value>
  109 + </entry>
  110 + <entry key="http_multi_server">
  111 + <value>
  112 + <list>
  113 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/http_multi_server-2.0.5/lib" />
  114 + </list>
  115 + </value>
  116 + </entry>
  117 + <entry key="http_parser">
  118 + <value>
  119 + <list>
  120 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/http_parser-3.1.3/lib" />
  121 + </list>
  122 + </value>
  123 + </entry>
  124 + <entry key="io">
  125 + <value>
  126 + <list>
  127 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/io-0.3.3/lib" />
  128 + </list>
  129 + </value>
  130 + </entry>
  131 + <entry key="js">
  132 + <value>
  133 + <list>
  134 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/js-0.6.1+1/lib" />
  135 + </list>
  136 + </value>
  137 + </entry>
  138 + <entry key="json_rpc_2">
  139 + <value>
  140 + <list>
  141 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/json_rpc_2-2.0.9/lib" />
  142 + </list>
  143 + </value>
  144 + </entry>
  145 + <entry key="kernel">
  146 + <value>
  147 + <list>
  148 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/kernel-0.3.4/lib" />
  149 + </list>
  150 + </value>
  151 + </entry>
  152 + <entry key="logging">
  153 + <value>
  154 + <list>
  155 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/logging-0.11.3+2/lib" />
  156 + </list>
  157 + </value>
  158 + </entry>
  159 + <entry key="matcher">
  160 + <value>
  161 + <list>
  162 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.3+1/lib" />
  163 + </list>
  164 + </value>
  165 + </entry>
  166 + <entry key="meta">
  167 + <value>
  168 + <list>
  169 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/meta-1.1.6/lib" />
  170 + </list>
  171 + </value>
  172 + </entry>
  173 + <entry key="mime">
  174 + <value>
  175 + <list>
  176 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/mime-0.9.6+2/lib" />
  177 + </list>
  178 + </value>
  179 + </entry>
  180 + <entry key="multi_server_socket">
  181 + <value>
  182 + <list>
  183 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/multi_server_socket-1.0.2/lib" />
  184 + </list>
  185 + </value>
  186 + </entry>
  187 + <entry key="node_preamble">
  188 + <value>
  189 + <list>
  190 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/node_preamble-1.4.4/lib" />
  191 + </list>
  192 + </value>
  193 + </entry>
  194 + <entry key="package_config">
  195 + <value>
  196 + <list>
  197 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/package_config-1.0.5/lib" />
  198 + </list>
  199 + </value>
  200 + </entry>
  201 + <entry key="package_resolver">
  202 + <value>
  203 + <list>
  204 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/package_resolver-1.0.4/lib" />
  205 + </list>
  206 + </value>
  207 + </entry>
  208 + <entry key="path">
  209 + <value>
  210 + <list>
  211 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/path-1.6.2/lib" />
  212 + </list>
  213 + </value>
  214 + </entry>
  215 + <entry key="plugin">
  216 + <value>
  217 + <list>
  218 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/plugin-0.2.0+3/lib" />
  219 + </list>
  220 + </value>
  221 + </entry>
  222 + <entry key="pool">
  223 + <value>
  224 + <list>
  225 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/pool-1.3.6/lib" />
  226 + </list>
  227 + </value>
  228 + </entry>
  229 + <entry key="pub_semver">
  230 + <value>
  231 + <list>
  232 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/pub_semver-1.4.2/lib" />
  233 + </list>
  234 + </value>
  235 + </entry>
  236 + <entry key="quiver">
  237 + <value>
  238 + <list>
  239 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/quiver-2.0.0+1/lib" />
  240 + </list>
  241 + </value>
  242 + </entry>
  243 + <entry key="shelf">
  244 + <value>
  245 + <list>
  246 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf-0.7.3+3/lib" />
  247 + </list>
  248 + </value>
  249 + </entry>
  250 + <entry key="shelf_packages_handler">
  251 + <value>
  252 + <list>
  253 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf_packages_handler-1.0.4/lib" />
  254 + </list>
  255 + </value>
  256 + </entry>
  257 + <entry key="shelf_static">
  258 + <value>
  259 + <list>
  260 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf_static-0.2.8/lib" />
  261 + </list>
  262 + </value>
  263 + </entry>
  264 + <entry key="shelf_web_socket">
  265 + <value>
  266 + <list>
  267 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf_web_socket-0.2.2+4/lib" />
  268 + </list>
  269 + </value>
  270 + </entry>
  271 + <entry key="sky_engine">
  272 + <value>
  273 + <list>
  274 + <option value="d:/flutter/bin/cache/pkg/sky_engine/lib" />
  275 + </list>
  276 + </value>
  277 + </entry>
  278 + <entry key="source_map_stack_trace">
  279 + <value>
  280 + <list>
  281 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_map_stack_trace-1.1.5/lib" />
  282 + </list>
  283 + </value>
  284 + </entry>
  285 + <entry key="source_maps">
  286 + <value>
  287 + <list>
  288 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_maps-0.10.7/lib" />
  289 + </list>
  290 + </value>
  291 + </entry>
  292 + <entry key="source_span">
  293 + <value>
  294 + <list>
  295 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.4.1/lib" />
  296 + </list>
  297 + </value>
  298 + </entry>
  299 + <entry key="stack_trace">
  300 + <value>
  301 + <list>
  302 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.9.3/lib" />
  303 + </list>
  304 + </value>
  305 + </entry>
  306 + <entry key="stream_channel">
  307 + <value>
  308 + <list>
  309 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-1.6.8/lib" />
  310 + </list>
  311 + </value>
  312 + </entry>
  313 + <entry key="string_scanner">
  314 + <value>
  315 + <list>
  316 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.0.4/lib" />
  317 + </list>
  318 + </value>
  319 + </entry>
  320 + <entry key="term_glyph">
  321 + <value>
  322 + <list>
  323 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.0.1/lib" />
  324 + </list>
  325 + </value>
  326 + </entry>
  327 + <entry key="test">
  328 + <value>
  329 + <list>
  330 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/test-1.3.0/lib" />
  331 + </list>
  332 + </value>
  333 + </entry>
  334 + <entry key="typed_data">
  335 + <value>
  336 + <list>
  337 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.1.6/lib" />
  338 + </list>
  339 + </value>
  340 + </entry>
  341 + <entry key="utf">
  342 + <value>
  343 + <list>
  344 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/utf-0.9.0+5/lib" />
  345 + </list>
  346 + </value>
  347 + </entry>
  348 + <entry key="vector_math">
  349 + <value>
  350 + <list>
  351 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.0.8/lib" />
  352 + </list>
  353 + </value>
  354 + </entry>
  355 + <entry key="vm_service_client">
  356 + <value>
  357 + <list>
  358 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/vm_service_client-0.2.6/lib" />
  359 + </list>
  360 + </value>
  361 + </entry>
  362 + <entry key="watcher">
  363 + <value>
  364 + <list>
  365 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/watcher-0.9.7+10/lib" />
  366 + </list>
  367 + </value>
  368 + </entry>
  369 + <entry key="web_socket_channel">
  370 + <value>
  371 + <list>
  372 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/web_socket_channel-1.0.9/lib" />
  373 + </list>
  374 + </value>
  375 + </entry>
  376 + <entry key="yaml">
  377 + <value>
  378 + <list>
  379 + <option value="d:/flutter/.pub-cache/hosted/pub.flutter-io.cn/yaml-2.1.15/lib" />
  380 + </list>
  381 + </value>
  382 + </entry>
  383 + </option>
  384 + </properties>
  385 + <CLASSES>
  386 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/analyzer-0.32.4/lib" />
  387 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/args-1.5.0/lib" />
  388 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/async-2.0.8/lib" />
  389 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-1.0.4/lib" />
  390 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.1.2/lib" />
  391 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/collection-1.14.11/lib" />
  392 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/convert-2.0.2/lib" />
  393 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/crypto-2.0.6/lib" />
  394 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/csslib-0.14.5/lib" />
  395 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/front_end-0.1.4/lib" />
  396 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/glob-1.1.7/lib" />
  397 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/html-0.13.3+3/lib" />
  398 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/http-0.11.3+17/lib" />
  399 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/http_multi_server-2.0.5/lib" />
  400 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/http_parser-3.1.3/lib" />
  401 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/io-0.3.3/lib" />
  402 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/js-0.6.1+1/lib" />
  403 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/json_rpc_2-2.0.9/lib" />
  404 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/kernel-0.3.4/lib" />
  405 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/logging-0.11.3+2/lib" />
  406 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.3+1/lib" />
  407 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/meta-1.1.6/lib" />
  408 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/mime-0.9.6+2/lib" />
  409 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/multi_server_socket-1.0.2/lib" />
  410 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/node_preamble-1.4.4/lib" />
  411 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/package_config-1.0.5/lib" />
  412 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/package_resolver-1.0.4/lib" />
  413 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/path-1.6.2/lib" />
  414 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/plugin-0.2.0+3/lib" />
  415 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/pool-1.3.6/lib" />
  416 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/pub_semver-1.4.2/lib" />
  417 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/quiver-2.0.0+1/lib" />
  418 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf-0.7.3+3/lib" />
  419 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf_packages_handler-1.0.4/lib" />
  420 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf_static-0.2.8/lib" />
  421 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/shelf_web_socket-0.2.2+4/lib" />
  422 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_map_stack_trace-1.1.5/lib" />
  423 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_maps-0.10.7/lib" />
  424 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.4.1/lib" />
  425 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.9.3/lib" />
  426 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-1.6.8/lib" />
  427 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.0.4/lib" />
  428 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.0.1/lib" />
  429 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/test-1.3.0/lib" />
  430 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.1.6/lib" />
  431 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/utf-0.9.0+5/lib" />
  432 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.0.8/lib" />
  433 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/vm_service_client-0.2.6/lib" />
  434 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/watcher-0.9.7+10/lib" />
  435 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/web_socket_channel-1.0.9/lib" />
  436 + <root url="file://D:/flutter/.pub-cache/hosted/pub.flutter-io.cn/yaml-2.1.15/lib" />
  437 + <root url="file://D:/flutter/bin/cache/pkg/sky_engine/lib" />
  438 + <root url="file://D:/flutter/packages/flutter/lib" />
  439 + <root url="file://D:/flutter/packages/flutter_test/lib" />
  440 + </CLASSES>
  441 + <JAVADOC />
  442 + <SOURCES />
  443 + </library>
  444 +</component>
  1 +<component name="libraryTable">
  2 + <library name="Dart SDK">
  3 + <CLASSES>
  4 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/async" />
  5 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/cli" />
  6 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/collection" />
  7 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/convert" />
  8 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/core" />
  9 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/developer" />
  10 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/html" />
  11 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/indexed_db" />
  12 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/io" />
  13 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/isolate" />
  14 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/js" />
  15 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/js_util" />
  16 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/math" />
  17 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/mirrors" />
  18 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/svg" />
  19 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/typed_data" />
  20 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/web_audio" />
  21 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/web_gl" />
  22 + <root url="file://D:/flutter/bin/cache/dart-sdk/lib/web_sql" />
  23 + </CLASSES>
  24 + <JAVADOC />
  25 + <SOURCES />
  26 + </library>
  27 +</component>
  1 +<component name="libraryTable">
  2 + <library name="Flutter Plugins" type="FlutterPluginsLibraryType">
  3 + <CLASSES />
  4 + <JAVADOC />
  5 + <SOURCES />
  6 + </library>
  7 +</component>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="NullableNotNullManager">
  4 + <option name="myDefaultNullable" value="android.support.annotation.Nullable" />
  5 + <option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
  6 + <option name="myNullables">
  7 + <value>
  8 + <list size="5">
  9 + <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
  10 + <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
  11 + <item index="2" class="java.lang.String" itemvalue="javax.annotation.CheckForNull" />
  12 + <item index="3" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
  13 + <item index="4" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
  14 + </list>
  15 + </value>
  16 + </option>
  17 + <option name="myNotNulls">
  18 + <value>
  19 + <list size="4">
  20 + <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" />
  21 + <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" />
  22 + <item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
  23 + <item index="3" class="java.lang.String" itemvalue="android.support.annotation.NonNull" />
  24 + </list>
  25 + </value>
  26 + </option>
  27 + </component>
  28 + <component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" default="true" />
  29 +</project>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="ProjectModuleManager">
  4 + <modules>
  5 + <module fileurl="file://$PROJECT_DIR$/.idea/screenutil.iml" filepath="$PROJECT_DIR$/.idea/screenutil.iml" />
  6 + </modules>
  7 + </component>
  8 +</project>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<module type="JAVA_MODULE" version="4">
  3 + <component name="NewModuleRootManager" inherit-compiler-output="true">
  4 + <exclude-output />
  5 + <content url="file://$MODULE_DIR$">
  6 + <excludeFolder url="file://$MODULE_DIR$/.dart_tool" />
  7 + <excludeFolder url="file://$MODULE_DIR$/.pub" />
  8 + <excludeFolder url="file://$MODULE_DIR$/build" />
  9 + </content>
  10 + <orderEntry type="inheritedJdk" />
  11 + <orderEntry type="sourceFolder" forTests="false" />
  12 + <orderEntry type="library" name="Dart SDK" level="project" />
  13 + <orderEntry type="library" name="Dart Packages" level="project" />
  14 + </component>
  15 +</module>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="VcsDirectoryMappings">
  4 + <mapping directory="" vcs="Git" />
  5 + </component>
  6 +</project>
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project version="4">
  3 + <component name="ChangeListManager">
  4 + <list default="true" id="4b1e7c8a-90e5-4705-b34f-bcaa595e12fe" name="Default" comment="">
  5 + <change beforePath="" afterPath="$PROJECT_DIR$/lib/flutter_screenutil.dart" />
  6 + <change beforePath="$PROJECT_DIR$/ScreenUtil.dart" afterPath="$PROJECT_DIR$/lib/flutter_screenutil.dart" />
  7 + </list>
  8 + <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
  9 + <option name="TRACKING_ENABLED" value="true" />
  10 + <option name="SHOW_DIALOG" value="false" />
  11 + <option name="HIGHLIGHT_CONFLICTS" value="true" />
  12 + <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
  13 + <option name="LAST_RESOLUTION" value="IGNORE" />
  14 + </component>
  15 + <component name="FileEditorManager">
  16 + <leaf>
  17 + <file leaf-file-name="flutter_screenutil.dart" pinned="false" current-in-tab="true">
  18 + <entry file="file://$PROJECT_DIR$/lib/flutter_screenutil.dart">
  19 + <provider selected="true" editor-type-id="text-editor">
  20 + <state relative-caret-position="0">
  21 + <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
  22 + <folding />
  23 + </state>
  24 + </provider>
  25 + </entry>
  26 + </file>
  27 + </leaf>
  28 + </component>
  29 + <component name="Git.Settings">
  30 + <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
  31 + </component>
  32 + <component name="GradleLocalSettings">
  33 + <option name="externalProjectsViewState">
  34 + <projects_view />
  35 + </option>
  36 + </component>
  37 + <component name="ProjectFrameBounds" extendedState="6">
  38 + <option name="x" value="-8" />
  39 + <option name="width" value="1936" />
  40 + <option name="height" value="1056" />
  41 + </component>
  42 + <component name="ProjectLevelVcsManager">
  43 + <ConfirmationsSetting value="2" id="Add" />
  44 + </component>
  45 + <component name="ProjectView">
  46 + <navigator currentView="ProjectPane" proportions="" version="1">
  47 + <flattenPackages />
  48 + <showMembers />
  49 + <showModules />
  50 + <showLibraryContents />
  51 + <hideEmptyPackages />
  52 + <abbreviatePackageNames />
  53 + <autoscrollToSource />
  54 + <autoscrollFromSource />
  55 + <sortByType />
  56 + <manualOrder />
  57 + <foldersAlwaysOnTop value="true" />
  58 + </navigator>
  59 + <panes>
  60 + <pane id="Scope" />
  61 + <pane id="ProjectPane">
  62 + <subPane>
  63 + <expand>
  64 + <path>
  65 + <item name="screenutil" type="b2602c69:ProjectViewProjectNode" />
  66 + <item name="screenutil" type="462c0819:PsiDirectoryNode" />
  67 + </path>
  68 + </expand>
  69 + <select />
  70 + </subPane>
  71 + </pane>
  72 + <pane id="PackagesPane" />
  73 + <pane id="AndroidView" />
  74 + <pane id="Scratches" />
  75 + </panes>
  76 + </component>
  77 + <component name="PropertiesComponent">
  78 + <property name="settings.editor.selected.configurable" value="android.sdk-updates" />
  79 + <property name="android.project.structure.last.selected" value="SDK Location" />
  80 + <property name="android.project.structure.proportion" value="0.15" />
  81 + <property name="android.sdk.path" value="D:/Android/sdk" />
  82 + <property name="last_opened_file_path" value="$PROJECT_DIR$" />
  83 + <property name="show.migrate.to.gradle.popup" value="false" />
  84 + <property name="dart.analysis.tool.window.force.activate" value="false" />
  85 + </component>
  86 + <component name="RecentsManager">
  87 + <key name="CopyFile.RECENT_KEYS">
  88 + <recent name="F:\screenutil" />
  89 + </key>
  90 + </component>
  91 + <component name="RunDashboard">
  92 + <option name="ruleStates">
  93 + <list>
  94 + <RuleState>
  95 + <option name="name" value="ConfigurationTypeDashboardGroupingRule" />
  96 + </RuleState>
  97 + <RuleState>
  98 + <option name="name" value="StatusDashboardGroupingRule" />
  99 + </RuleState>
  100 + </list>
  101 + </option>
  102 + </component>
  103 + <component name="RunManager">
  104 + <configuration default="true" type="Application" factoryName="Application">
  105 + <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
  106 + <option name="MAIN_CLASS_NAME" />
  107 + <option name="VM_PARAMETERS" />
  108 + <option name="PROGRAM_PARAMETERS" />
  109 + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
  110 + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
  111 + <option name="ALTERNATIVE_JRE_PATH" />
  112 + <option name="ENABLE_SWING_INSPECTOR" value="false" />
  113 + <option name="ENV_VARIABLES" />
  114 + <option name="PASS_PARENT_ENVS" value="true" />
  115 + <module name="" />
  116 + <envs />
  117 + </configuration>
  118 + <configuration default="true" type="Remote" factoryName="Remote">
  119 + <option name="USE_SOCKET_TRANSPORT" value="true" />
  120 + <option name="SERVER_MODE" value="false" />
  121 + <option name="SHMEM_ADDRESS" value="javadebug" />
  122 + <option name="HOST" value="localhost" />
  123 + <option name="PORT" value="5005" />
  124 + </configuration>
  125 + <configuration default="true" type="TestNG" factoryName="TestNG">
  126 + <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
  127 + <module name="" />
  128 + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
  129 + <option name="ALTERNATIVE_JRE_PATH" />
  130 + <option name="SUITE_NAME" />
  131 + <option name="PACKAGE_NAME" />
  132 + <option name="MAIN_CLASS_NAME" />
  133 + <option name="METHOD_NAME" />
  134 + <option name="GROUP_NAME" />
  135 + <option name="TEST_OBJECT" value="CLASS" />
  136 + <option name="VM_PARAMETERS" value="-ea" />
  137 + <option name="PARAMETERS" />
  138 + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
  139 + <option name="OUTPUT_DIRECTORY" />
  140 + <option name="ANNOTATION_TYPE" />
  141 + <option name="ENV_VARIABLES" />
  142 + <option name="PASS_PARENT_ENVS" value="true" />
  143 + <option name="TEST_SEARCH_SCOPE">
  144 + <value defaultName="singleModule" />
  145 + </option>
  146 + <option name="USE_DEFAULT_REPORTERS" value="false" />
  147 + <option name="PROPERTIES_FILE" />
  148 + <envs />
  149 + <properties />
  150 + <listeners />
  151 + </configuration>
  152 + <configuration name="&lt;template&gt;" type="Applet" default="true" selected="false">
  153 + <option name="MAIN_CLASS_NAME" />
  154 + <option name="HTML_FILE_NAME" />
  155 + <option name="HTML_USED" value="false" />
  156 + <option name="WIDTH" value="400" />
  157 + <option name="HEIGHT" value="300" />
  158 + <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
  159 + <option name="VM_PARAMETERS" />
  160 + </configuration>
  161 + <configuration default="true" type="JUnit" factoryName="JUnit">
  162 + <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
  163 + <module name="" />
  164 + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
  165 + <option name="ALTERNATIVE_JRE_PATH" />
  166 + <option name="PACKAGE_NAME" />
  167 + <option name="MAIN_CLASS_NAME" />
  168 + <option name="METHOD_NAME" />
  169 + <option name="TEST_OBJECT" value="class" />
  170 + <option name="VM_PARAMETERS" value="-ea" />
  171 + <option name="PARAMETERS" />
  172 + <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
  173 + <option name="ENV_VARIABLES" />
  174 + <option name="PASS_PARENT_ENVS" value="true" />
  175 + <option name="TEST_SEARCH_SCOPE">
  176 + <value defaultName="singleModule" />
  177 + </option>
  178 + <envs />
  179 + <patterns />
  180 + <method />
  181 + </configuration>
  182 + <configuration name="&lt;template&gt;" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" default="true" selected="false">
  183 + <option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
  184 + </configuration>
  185 + </component>
  186 + <component name="ShelveChangesManager" show_recycled="false">
  187 + <option name="remove_strategy" value="false" />
  188 + </component>
  189 + <component name="SvnConfiguration">
  190 + <configuration />
  191 + </component>
  192 + <component name="TaskManager">
  193 + <task active="true" id="Default" summary="Default task">
  194 + <changelist id="4b1e7c8a-90e5-4705-b34f-bcaa595e12fe" name="Default" comment="" />
  195 + <created>1537725879111</created>
  196 + <option name="number" value="Default" />
  197 + <option name="presentableId" value="Default" />
  198 + <updated>1537725879111</updated>
  199 + </task>
  200 + <servers />
  201 + </component>
  202 + <component name="ToolWindowManager">
  203 + <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
  204 + <layout>
  205 + <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
  206 + <window_info id="Palette&#9;" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  207 + <window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  208 + <window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  209 + <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
  210 + <window_info id="Dart Analysis" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32936078" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  211 + <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  212 + <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
  213 + <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  214 + <window_info id="Flutter Outline" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  215 + <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  216 + <window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  217 + <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
  218 + <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
  219 + <window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  220 + <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
  221 + <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
  222 + <window_info id="Flutter Inspector" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
  223 + <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
  224 + <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
  225 + <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
  226 + <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
  227 + <window_info id="Captures" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
  228 + <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
  229 + <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
  230 + <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
  231 + </layout>
  232 + </component>
  233 + <component name="VcsContentAnnotationSettings">
  234 + <option name="myLimit" value="2678400000" />
  235 + </component>
  236 + <component name="XDebuggerManager">
  237 + <breakpoint-manager />
  238 + <watches-manager />
  239 + </component>
  240 + <component name="editorHistoryManager">
  241 + <entry file="file://$PROJECT_DIR$/lib/flutter_screenutil.dart">
  242 + <provider selected="true" editor-type-id="text-editor">
  243 + <state relative-caret-position="0">
  244 + <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
  245 + <folding />
  246 + </state>
  247 + </provider>
  248 + </entry>
  249 + </component>
  250 + <component name="masterDetails">
  251 + <states>
  252 + <state key="ProjectJDKs.UI">
  253 + <settings>
  254 + <last-edited>1.8</last-edited>
  255 + <splitter-proportions>
  256 + <option name="proportions">
  257 + <list>
  258 + <option value="0.2" />
  259 + </list>
  260 + </option>
  261 + </splitter-proportions>
  262 + </settings>
  263 + </state>
  264 + </states>
  265 + </component>
  266 +</project>
1 -/*  
2 - * Created by 李卓原 on 2018/9/20.  
3 - * email: zhuoyuan93@gmail.com  
4 - * 设计稿设备尺寸 1080 * 1920 px  
5 - */  
6 -  
7 -import 'dart:ui';  
8 -  
9 -class ScreenUtil {  
10 - static ScreenUtil instance;  
11 -  
12 - //设计稿的设备尺寸修改 (请修改成你的设计稿的尺寸)  
13 - static const designWidth = 1080;  
14 - static const designHeight = 1920;  
15 -  
16 - //设备的像素密度  
17 - static double pixelRatio = window.devicePixelRatio;  
18 -  
19 - //当前设备宽度 px  
20 - static double screenWidth = window.physicalSize.width;  
21 -  
22 - //当前设备高度 px  
23 - static double screenHeight = window.physicalSize.height;  
24 -  
25 - //状态栏高度 刘海屏会更高  
26 - static double StatusBarHeight = window.padding.top;  
27 -  
28 - //底部安全区距离  
29 - static double BottomBarHeight = window.padding.bottom;  
30 -  
31 - //相对于设计稿放大的倍数  
32 - var scaleWidth = screenWidth / designWidth / pixelRatio;  
33 - var scaleHeight = screenHeight / designHeight / pixelRatio;  
34 -  
35 - static ScreenUtil getInstance() {  
36 - if (instance == null) {  
37 - instance = new ScreenUtil();  
38 - }  
39 - return instance;  
40 - }  
41 -  
42 - /**  
43 - * 根据设计稿的设备宽度适配  
44 - * 高度也根据这个来做适配可以保证不变形  
45 - */  
46 - setWidth(int width) => width * scaleWidth;  
47 -  
48 - /**  
49 - * 根据设计稿的设备高度适配  
50 - * 当发现设计稿中的一屏显示的与当前样式效果不符合时,  
51 - * 或者形状有差异时,高度适配建议使用此方法  
52 - * 高度适配主要针对想根据设计稿的一屏展示一样的效果  
53 - */  
54 - setHeight(int height) => height * scaleHeight;  
55 -} 1 +/*
  2 + * Created by 李卓原 on 2018/9/24.
  3 + * email: zhuoyuan93@gmail.com
  4 + * 设计稿设备尺寸默认为 1080 * 1920 px
  5 + */
  6 +
  7 +import 'dart:ui';
  8 +
  9 +class ScreenUtil {
  10 + //设计稿的设备尺寸修改 (请修改成你的设计稿的尺寸)
  11 + int designWidth;
  12 + int designHeight;
  13 + static ScreenUtil instance;
  14 +
  15 + ScreenUtil({int width, int height}) {
  16 + designWidth = width;
  17 + designHeight = height;
  18 + }
  19 +
  20 + static ScreenUtil getInstance() {
  21 + if (instance == null) {
  22 + instance = new ScreenUtil(width: 1080, height: 1920);
  23 + }
  24 + return instance;
  25 + }
  26 +
  27 + //设备的像素密度
  28 + static double pixelRatio = window.devicePixelRatio;
  29 +
  30 + //当前设备宽度 px
  31 + static double screenWidth = window.physicalSize.width;
  32 +
  33 + //当前设备高度 px
  34 + static double screenHeight = window.physicalSize.height;
  35 +
  36 + //状态栏高度 刘海屏会更高
  37 + static double statusBarHeight = window.padding.top;
  38 +
  39 + //底部安全区距离
  40 + static double bottomBarHeight = window.padding.bottom;
  41 +
  42 + //相对于设计稿放大的倍数
  43 + double get scaleWidth =>
  44 + screenWidth / ScreenUtil.getInstance().designWidth / pixelRatio;
  45 +
  46 + double get scaleHeight =>
  47 + screenHeight / ScreenUtil.getInstance().designHeight / pixelRatio;
  48 +
  49 + /**
  50 + * 根据设计稿的设备宽度适配
  51 + * 高度也根据这个来做适配可以保证不变形
  52 + */
  53 + setWidth(int width) => width * scaleWidth;
  54 +
  55 + /**
  56 + * 根据设计稿的设备高度适配
  57 + * 当发现设计稿中的一屏显示的与当前样式效果不符合时,
  58 + * 或者形状有差异时,高度适配建议使用此方法
  59 + * 高度适配主要针对想根据设计稿的一屏展示一样的效果
  60 + */
  61 + setHeight(int height) => height * scaleHeight;
  62 +}