重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要为大家展示了“Flutter中如何添加资源文件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Flutter中如何添加资源文件”这篇文章吧。
成都地区优秀IDC服务器托管提供商(成都创新互联).为客户提供专业的绵阳服务器托管,四川各地服务器托管,绵阳服务器托管、多线服务器托管.托管咨询专线:13518219792
在 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中如何添加资源文件”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!