前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >你必须掌握在Flutter中添加资源文件的方法

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

作者头像
砸漏
发布2020-11-05 10:24:47
2.4K0
发布2020-11-05 10:24:47
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

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

1. 添加图片资源文件

1.1 添加本地图片资源

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

注意缩进!本地文件夹内的资源可以选择导入整个文件夹,或者只导入指定文件。使用:Image.asset(“images/pic.png”)

1.2 添加依赖插件图片资源

1.添加依赖插件

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

代码语言:javascript
复制
dependencies:
    flutter_gallery_assets: 0.1.6

注意缩进!

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

代码语言:javascript
复制
flutter:
  assets:
    - packages/flutter_gallery_assets/places/india_chennai_flower_market.png

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

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

3.使用

代码语言:javascript
复制
child: Image.asset(
 // 图片路径
 'places/india_chennai_flower_market.png',
 // 包名
 package: 'flutter_gallery_assets',
),

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

1.3 分辨率相关的资源

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

代码语言:javascript
复制
../image.png
../1.0x/image.png
../2.0x/image.png

使用:

代码语言:javascript
复制
AssetImage('../image.png')

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

2.添加字体资源

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

代码语言:javascript
复制
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

使用字体:

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

以上就是本文的全部内容,希望对大家的学习有所帮助。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档