当前位置: 首页 > article >正文

002 flutter基础 初始文件讲解(1)

在学习flutter的时候,要有“万物皆widget”的思想,这样有利于你的学习,话不多说,开始今天的学习

1.创建文件

进入trae后,按住ctrl+shift+P,输入Flutter:New Project,回车,即可得到flutter初始文件

左侧会有很多的文件夹,但是这里要注意的是,我们目前只需要注意lib文件夹里面的main.dart,这也是当前我们需要学习的地方

2.运行

当前的初始文件实际上是一个示例文件,在trae里打开终端,然后输入flutter run

那么在我这里,我选择1,最后的结果为:

 

这是一个简单的按下按钮,就会数字加一的程序

3.代码解释

由于主要的示例文件难度较大,因此我们先把main.dart里面的代码全部删除,从0开始,这样对大家的负担会稍微少些。

import "package:flutter/material.dart";

 这里导入了一个关键的模块,这个模块的功能是引入flutter框架,用于构建用户界面

import "package:flutter/material.dart";void main(){runApp(MaterialApp());
}

这里是一个熟悉的dart语法,main函数。

runApp是一个方法,是flutter框架提供的一个函数,用于启动应用程序

而MaterialApp是一个widget,它提供了Material Design风格的界面,里面有很多widget,比如Scaffold,AppBar,Text,Button等等

import "package:flutter/material.dart";void main(){runApp(MaterialApp(home:Scaffold(),debugShowCheckedModeBanner: false,));  
}

这里我们加入了两个东西,一个是home,表示主页面,而Scaffold是一个widget,它提供了一个基本的Material Design布局,比如AppBar,Body,FloatingActionButton等等

至于debugShowCheckedModeBanner是什么,可以看下上面那个示例图片的右上角,有一个debug的图标,而把这个设置为false,就可以将图标删除

import "package:flutter/material.dart";void main(){runApp(MaterialApp(home:Scaffold(appBar:AppBar(), body:Center(),),debugShowCheckedModeBanner: false,));
}

这里我们在home里面加入了两个,一个是appBar,另一个是body,分别对应着顶部栏和主页面内部,AppBar是一个widget,它提供了一个Material Design风格的顶部导航栏,而Center是一个widget,它提供了一个居中的布局,里面有很多widget,比如Text,Button等等

import "package:flutter/material.dart";void main(){runApp(MaterialApp(home:Scaffold(appBar:AppBar(title:Text("The World")), body:Center(child:Text("Hello World"),), ),debugShowCheckedModeBanner: false,));
}

这里,我们加入了两句话,对于标题,直接使用title,然后记得在输入前用Text包好,对于主页面文本,则要使用child。

现在,我们可以试试效果啦!

看上去似乎有点奇怪,原来是因为字太小了,而且颜色过于单调,那么,让我们进行一些小小的修改:

import "package:flutter/material.dart";void main(){runApp(MaterialApp(home:Scaffold(appBar:AppBar(title:Text("The World")), body:Center(child:Text("Hello World",textDirection:TextDirection.ltr, style:TextStyle(fontSize:40.0,color:Colors.purple,fontWeight:FontWeight.bold,),),), ),debugShowCheckedModeBanner: false,));
}

这里,我们对主页面文字进行了修改,可以看见,我们加入了textDirection,这表示着文本的方向,ltr是左往右,rtl是右往左,很好理解,毕竟:l,是left的首字母,r是right的首字母

在style里面,可以设置文本的各种风格,比如这里的fontSize就是40的大小,而color则是字的颜色,fontWidght则是字体的粗细,这里的bold指的是粗的意思,那么接下来我们再看看效果~

是不是比之前那张好多啦

那么今天就先到这啦,大家一定要多动手,这部分对于大部分人来说,不是看看就能看会的哦,加油加油!

祝大家天天开心!代码一遍就通!没有debug的烦恼!

http://www.lryc.cn/news/2396169.html

相关文章:

  • AI 让无人机跟踪更精准——从视觉感知到智能预测
  • Launcher3体系化之路
  • 用wireshark抓了个TCP通讯的包
  • VR/AR 显示瓶颈将破!铁电液晶技术迎来关键突破
  • 【前端】Vue中实现pdf逐页转图片,图片再逐张提取文字
  • 焦虑而烦躁的上午
  • Python使用
  • 分类预测 | Matlab实现CNN-LSTM-Attention高光谱数据分类
  • 【解决方案-RAGFlow】RAGFlow显示Task is queued、 Microsoft Visual C++ 14.0 or greater is required.
  • 爬虫到智能数据分析:Bright Data × Kimi 智能洞察亚马逊电商产品销售潜力
  • 高级前端工程师必备的 JS 设计模式入门教程,常用设计模式案例分享
  • unix/linux source 命令,其发展历程详细时间线、由来、历史背景
  • 2023年电赛C题——电感电容测量装置
  • pycharm打印时不换行,方便对比观察
  • 因泰立科技:镭眸T51激光雷达,打造智能门控新生态
  • Microsoft Fabric - 尝试一下Data Factory一些新的特性(2025年5月)
  • NodeJS全栈开发面试题讲解——P10微服务架构(Node.js + 多服务协作)
  • 【前端】javascript和Vue面试八股
  • WEB3——区块链留言板(留言上链),查看web3日志-入门项目推荐
  • 开源库免费API服务平台 ALLBEAPI
  • 【配置vscode默认终端为git bash】
  • Cloudflare
  • Cypress + TypeScript + Vue3
  • Oracle DG库控制文件IO错误导致宕机的应急处理
  • ​​技术深度解析:《鸿蒙5.0+:全场景能效的产业革命》​
  • Spring Boot启动慢?Redis缓存击穿?Kafka消费堆积?——Java后端常见问题排查实战
  • 深入解析 IP 代理:原理、应用场景与优化策略
  • 58、辣椒种植学习
  • 【SpringBoot】零基础全面解析SpringBoot配置文件
  • python:PyMOL 能处理 *.pdb 文件吗?