Flutter基础(前端教程④-组件拼接)

基础1

Dart 复制代码
class MainPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(  // 或者用 Row,取决于你想要垂直还是水平排列
        children: [
          Bg(),
          TopAppBar(),
          WelcomeBanner(),  // 第一个 widget
          Tabs(),   
          Frame63(),
        ],
      ),
    );
  }
}

基础2

Dart 复制代码
class MainPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SingleChildScrollView(  // 添加滚动支持
        child: Stack(
          children: [
            Bg(),  // 背景在最底层
            Column(
              children: [
                TopAppBar(),
                WelcomeBanner(),
                Tabs(),
                Frame63(),
              ],
            ),
          ],
        ),
      ),
    );
  }
}

Stack 组件的作用是让多个组件按层叠顺序显示,类似 Photoshop 中的图层概念。

Stack 允许子组件相互叠加,通过 Positioned 或顺序控制层级关系。在你的代码中:

  • 第一层Bg() 作为背景,占据整个屏幕
  • 第二层Column() 包含的内容(如 TopAppBarWelcomeBanner 等)显示在背景之上

基础3(增加间距)

Dart 复制代码
class MainPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SingleChildScrollView(  // 添加滚动支持
        child: Stack(
          children: [
            Bg(),  // 背景在最底层
            Column(
              children: [
                TopAppBar(),
                WelcomeBanner(),
                Tabs(),
                Frame63(),
                SizedBox(height: 55.0), // 此处的16.0表示间距大小,你可按需调整
                Headline(),
                SizedBox(height: 33.0),
              ],
            ),
          ],
        ),
      ),
    );
  }
}

在 Flutter 中,double.infinity 是一个特殊的数值,表示无限大。它主要用于在布局中让组件尽可能地占据可用空间。不过,这个值的使用需要谨慎,因为它可能会导致布局错误。

相关推荐
键盘鼓手苏苏几秒前
Flutter 三方库 p2plib 的鸿蒙化适配指南 - 实现高性能的端到端(P2P)加密通讯、支持分布式节点发现与去中心化数据流传输实战
flutter·harmonyos·鸿蒙·openharmony
加农炮手Jinx1 分钟前
Flutter for OpenHarmony:postgrest 直接访问 PostgreSQL 数据库的 RESTful 客户端(Supabase 核心驱动) 深度解析与鸿蒙适配指南
数据库·flutter·华为·postgresql·restful·harmonyos·鸿蒙
加农炮手Jinx1 分钟前
Flutter 组件 heart 适配鸿蒙 HarmonyOS 实战:分布式心跳监控,构建全场景保活检测与链路哨兵架构
flutter·harmonyos·鸿蒙·openharmony
钛态4 分钟前
Flutter 三方库 http_mock_adapter — 赋能鸿蒙应用开发的高效率网络接口 Mock 与自动化测试注入引擎(适配鸿蒙 HarmonyOS Next ohos)
android·网络协议·flutter·http·华为·中间件·harmonyos
王码码20354 分钟前
Flutter for OpenHarmony:Flutter 三方库 algoliasearch 毫秒级云端搜索体验(云原生搜索引擎)
android·前端·git·flutter·搜索引擎·云原生·harmonyos
王码码20355 分钟前
Flutter 三方库 dns_client 的鸿蒙化适配指南 - 告别 DNS 劫持、探索 DNS-over-HTTPS (DoH) 技术、构建安全的鸿蒙网络请求环境
flutter·harmonyos·鸿蒙·openharmony·dns_client
键盘鼓手苏苏6 分钟前
Flutter 组件 highlighter 适配鸿蒙 HarmonyOS 实战:高性能语法高亮,构建大规模代码分析与文本染色架构
flutter·harmonyos·鸿蒙·openharmony
国医中兴8 分钟前
Flutter 三方库 langchain_google 的鸿蒙化适配指南 - 链接 Gemini 智慧中枢、LangChain AI 实战、鸿蒙级智能应用专家
flutter·langchain·harmonyos
发现一只大呆瓜9 分钟前
深入浅出 AST:解密 Vite、Babel编译的底层“黑盒”
前端·面试·vite
左手厨刀右手茼蒿9 分钟前
Flutter for OpenHarmony: Flutter 三方库 shamsi_date 助力鸿蒙应用精准适配波斯历法(中东出海必备)
android·flutter·ui·华为·自动化·harmonyos