你必须掌握在Flutter中添加资源文件

你必须掌握在Flutter中添加资源文件

Android小彩虹2021-08-23 21:40:12220A+A-

目录传送门:《Flutter快速上手指南》先导篇

在 Flutter 中,需要在根目录下的 pubspec.yaml 文件中配置资源的路径,资源才能被打包使用。

现在,看看如何配置资源吧。

1. 添加图片资源文件

1.1 添加本地图片资源

flutter:
    assets:
        // 表示引入根目录下的 images 文件夹下的所有资源文件
        - images/
        // 只添加 images/ 下的 pci.png
        - images/pci.png

注意缩进!

本地文件夹内的资源可以选择导入整个文件夹,或者只导入指定文件。

使用:

Image.asset("images/pic.png")

1.2 添加依赖插件图片资源

1.添加依赖插件

pubspec.yaml 文件的 dependencies 下添加依赖插件。

dependencies:
    flutter_gallery_assets: 0.1.6

注意缩进!

2.注册依赖插件中的资源

同样需要在 pubspec.yaml 文件的 flutter 下的 assets 下添加所要用到的依赖插件中的图片路径。

flutter:
    assets:
        - packages/flutter_gallery_assets/places/india_chennai_flower_market.png

packages 后跟插件的名称,图片需要插件包中的完整路径。

这种情况不能一次性注册一个文件夹的图片了,只能一张图一张图的添加。

3.使用

child: Image.asset(
  // 图片路径
  'places/india_chennai_flower_market.png',
  // 包名
  package: 'flutter_gallery_assets',
),

在使用第三方库资源的时候,需要加上包名。

1.3 分辨率相关的资源

Flutter 支持根据设备分辨率自动选择合适分辨率的图片资源,但资源需要按照以下规则添加:

../image.png
../1.0x/image.png
../2.0x/image.png

使用:

AssetImage('../image.png')

只需要使用默认的图即可,AssetImage 会根据设备分辨率自动选择合适大小的图标。

2.添加字体资源

字体资源的添加格式如下,同样是在 pubspec.yaml中:

flutter:
    fonts:
      // 一组字体的名称
      - family: Schyler
        fonts:
          // 组内包哈的字体资源文件,第一个是默认字体
          - asset: fonts/Schyler-Regular.ttf
          - asset: fonts/Schyler-Italic.ttf
            // 定义该字体的style
            style: italic
      // 一组字体的名称
      - family: Trajan Pro
        fonts:
          - asset: fonts/TrajanPro.ttf
          - asset: fonts/TrajanPro_Bold.ttf
            weight: 700
      // 一组字体的名称
      - family: Raleway
        fonts:
          - asset: packages/flutter_gallery_assets/fonts/raleway/Raleway-Regular.ttf
          - asset: packages/flutter_gallery_assets/fonts/raleway/Raleway-Medium.ttf
            weight: 500
          - asset: packages/flutter_gallery_assets/fonts/raleway/Raleway-SemiBold.ttf
            weight: 600

使用字体:

TextStyle(
    // 字体组名称
    fontFamily: 'Raleway',
    inherit: false,
    fontSize: 24.0,
    // 根据 weight 选择具体的字体
    fontWeight: FontWeight.w500,
    color: Colors.white,
    textBaseline: TextBaseline.alphabetic,
  )

目录传送门:《Flutter快速上手指南》先导篇

如何找到我?

传送门:CoorChice 的主页

传送门:CoorChice 的 Github


点击这里复制本文地址 以上内容由权冠洲的博客整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

支持Ctrl+Enter提交

联系我们| 本站介绍| 留言建议 | 交换友链 | 域名展示
本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除

权冠洲的博客 © All Rights Reserved.  Copyright quanguanzhou.top All Rights Reserved
苏公网安备 32030302000848号   苏ICP备20033101号-1
本网站由 提供CDN/云存储服务

联系我们