Flutter学习(一)

目录
Flutter学习(一)
Flutter学习(二)-FlutterGo学习

概念

在 Flutter 中,几乎所有都是 widget,包括对齐 (alignment)、填充 (padding) 和布局 (layout)。一个 widget 的主要工作是提供一个 build() 方法来描述如何根据其他较低级别的 widgets 来显示自己。
在 Flutter 的响应式风格的框架中,调用 setState() 会为 State 对象触发 build() 方法,从而导致对 UI 的更新

pubspec.yaml配置文件说明

类似android开发中的AndroidManifest.xml,Gradle配置文件,Flutter项目根目录下的pubspec.yaml文件是Flutter的配置文件。
虽然都是移动开发中的配置文件,但差别还是挺大的。
在Flutter中,虽然在Flutter项目中的Android文件夹下有Gradle文件,但只有在添加平台相关所需的依赖关系时才使用这些文件。 否则,应该使用pubspec.yaml声明用于Flutter的外部依赖项。
完整配置文件

    #name很重要,如果修改了name所有的dart的文件的import前引用的本地的文件啊的包名都需要修改
    name: flutterdemo
    description: A new Flutter application.
     
    dependencies:
      flutter:
        sdk: flutter
     
     #添加依赖packages ^表示适配和当前大版本一致的版本,~表示适配和当前小版本一致的版本
      cupertino_icons: ^0.1.2
      english_words: ^3.1.0
     # image_picker: ^0.4.8
     
    dev_dependencies:
      flutter_test:
        sdk: flutter
     
      #启用国际化
      flutter_localizations:
        sdk: flutter
     
    #定义常量
     
    #数组
    server:
        - aaaaaa
        - bbbbbb
    	- dddddd
    #常量
    age: 22         # int
    boolitem: true  #定义一个boolean值
    name: 'hello'   #定义一个string
     
     
    flutter:
     
      # The following line ensures that the Material Icons font is
      # included with your application, so that you can use the icons in
      # the material Icons class.
      uses-material-design: true
      # To add assets to your application, add an assets section, like this:
      #添加资源,不单单是图片,images是个和pubspec.yaml配置文件同级的目录,如果不同级,需要添加..
      assets:
            - images/park.jpg
            - images/lake.jpg
            - images/touxiang.jpg
      #  - images/a_dot_burr.jpeg
      #  - images/a_dot_ham.jpeg
       #字体设置
       fonts:
         - family: Schyler
           fonts:
           - asset: fonts/Schyler-Regular.ttf
            - asset: fonts/Schyler-Italic.ttf
               style: italic
         - family: Trajan Pro
           fonts:
          - asset: fonts/TrajanPro.ttf
          - asset: fonts/TrajanPro_Bold.ttf
            weight: 700

name:这里应该叫包名。
如果修改了配置文件中的name(flutterdemo —flutterdemo111),下面对本地文件的引用前的包名都需要修改:import ‘package:flutterdemo/FourPage.dart’;

引入图片资源:
assets: //引入图片资源,识别应用程序所需的asset,可以任意文件夹,Flutter将asset放置到称为 asset bundle 的特殊存档中,可以是图片,文本等资源。

- images/park.jpg
- images/lake.jpg

不同尺寸图片资源写法:

…/my_icon.png
…/2.0x/my_icon.png
…/3.0x/my_icon.png

读取文本:

import 'package:flutter/services.dart' show rootBundle;
Future<String> loadAsset() async {
//读取文件是的路径,就是assets下配置的 
return await rootBundle.loadString('assets/config.json');
}

使用图片:

//图片路径的配置
new AssetImage('graphics/background.png'),

加载依赖包中图片:
//配置name的作用,需要读取其他外部package下的资源时

new AssetImage('icons/heart.png', package: 'my_icons')

这里顺便说一下更新应用自身图标,只需要按照android,Ios自己的规范进行更新:
fonts:支持字体的设置,可以使用自定义字体。
设置方式:

- family: Schyler
fonts:
- asset: fonts/Schyler-Regular.ttf
- asset: fonts/Schyler-Italic.ttf
style: italic

使用方式:

style: new TextStyle( fontFamily: 'Schyler', fontSize: 24.0, ),

启用国际化,materialDesign:

 flutter_localizations:
sdk: flutter
flutter:
uses-material-design: true

参考:Flutter 开发文档
Flutter pubspec.yaml配置文件说明

发布了216 篇原创文章 · 获赞 91 · 访问量 25万+

猜你喜欢

转载自blog.csdn.net/yu75567218/article/details/103985510
今日推荐