你必須掌握在Flutter中添加資源文件

目錄傳送門:《Flutter快速上手指南》先導篇git

在 Flutter 中,須要在根目錄下的 pubspec.yaml 文件中配置資源的路徑,資源才能被打包使用。github

如今,看看如何配置資源吧。bash

1. 添加圖片資源文件

1.1 添加本地圖片資源

flutter:
    assets:
        // 表示引入根目錄下的 images 文件夾下的全部資源文件
        - images/
        // 只添加 images/ 下的 pci.png
        - images/pci.png
複製代碼

⚠️ 注意縮進!post

本地文件夾內的資源能夠選擇導入整個文件夾,或者只導入指定文件。字體

使用:spa

Image.asset("images/pic.png")
複製代碼

1.2 添加依賴插件圖片資源

1.添加依賴插件插件

pubspec.yaml 文件的 dependencies 下添加依賴插件。3d

dependencies:
    flutter_gallery_assets: 0.1.6
複製代碼

⚠️ 注意縮進!code

2.註冊依賴插件中的資源cdn

一樣須要在 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

相關文章
相關標籤/搜索