企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
android目录:andriod资源文件 build:运行项目时,生成编译目录 ios:ios资源文件 lib:自己编写代码的目录,自己的资源 test:报测试文件 pubspec.yaml:项目配置文件,项目名称,描述,项目需要的各种依赖,一般存放第三方库的依赖 如果使用第三方库,需要在dependencies中配置第三方库 自动执行**flutter package get**把远方的库下载下来 ## Flutter入口文件和入口方法 main.dart是flutter的入口文件 ~~~ void main()=> runApp(MyApp()); ~~~ main方法是dart的入口方法,runApp是flutter的入口方法,MyApp是自定义的一个组件。 flutter中所以的组件都是类。 ~~~ import 'package:flutter/material.dart'; void main(){ runApp(new Center( child: Text( "123458frGCEREREDDDFFFerererF", textDirection: TextDirection.rtl ), )); } ~~~ **dart中实例化时new关键字可以省略** 内置组件就是一个类 一个组件会很大,放在参数中是不合理的,因此需要自定义组件。 ~~~ // 自定义组件,创建一个类 // StatelessWidget:无状态组件,状态不会变化的Widget // StatelessWidget是一个抽象类, 里面有一个build的抽象方法,需要实现抽象类的抽象方法 // 抽象类不能被实例化,需要通过继承的方法让子类实例化 class MyApp extends StatelessWidget{ @override // build 返回Widget Widget build(BuildContext context){ return Center( child: Text( "123456", textDirection: TextDirection.rtl, style: TextStyle( fontSize: 40.0,//double类型 // color: Colors.yellow // fromRGBO (r, g, b, opacity) color: Color.fromRGBO(244, 233, 121, 0.5) ), ), ); } } ~~~ ## MaterialApp组件和Scaffold**装饰组件** ### MaterialApp MaterialApp:是一个方便的Widget,封装了应用程序Material Design所需要的一些Widget,一般作为顶层widget使用。 常用属性: home(主页):传入的是页面信息 title(标题): color(颜色): theme(主题): routes(路由): ### scaffold Scaffold是Material Design布局结构的基本实现,此类提供了用于显示的drawer,snackbar和底部sheet的API 主要属性: appBar:显示界面顶部的一个AppBar(导航) body:当前界面所显示的主要内容Widget drawer:抽屉菜单控件 ~~~ import 'package:flutter/material.dart'; void main(){ runApp(MyApp()); } // 自定义组件,创建一个类 // StatelessWidget:无状态组件,状态不会变化的Widget // StatelessWidget是一个抽象类, 里面有一个build的抽象方法,需要实现抽象类的抽象方法 // 抽象类不能被实例化,需要通过继承的方法让子类实例化 class MyApp extends StatelessWidget{ @override // build 返回Widget Widget build(BuildContext context){ return MaterialApp( home: Scaffold( appBar: AppBar( title: Text('Flutter demo') ), body: HomeContent(), ), theme: ThemeData( //主题 primarySwatch: Colors.yellow ), ); } } class HomeContent extends StatelessWidget{ @override Widget build(BuildContext context) { // TODO: implement build return Center( child: Text( "1234567", textDirection: TextDirection.rtl, style: TextStyle( fontSize: 40.0,//double类型 // color: Colors.yellow // fromRGBO (r, g, b, opacity) color: Color.fromRGBO(244, 233, 121, 0.5) ), ), ); } } ~~~