Flutter---底部导航栏(2) 效果图底部导航栏import package:flutter/material.dart; import package:my_flutter/http/second_page.dart; import first_page.dart; ///底部导航栏 class DemoPage extends StatefulWidget { const DemoPage({super.key}); override StateDemoPage createState() _DemoPageState(); } class _DemoPageState extends StateDemoPage { static const _pageList [FirstPage(),SecondPage()]; var _pageIndex 0; override Widget build(BuildContext context) { return Stack( children: [ _pageList[_pageIndex], //底部导航栏 Positioned( bottom: 40, left: 0, right: 0, child: Center( child: Container( height: 68, width: 221, decoration: BoxDecoration( borderRadius: BorderRadius.circular(45), color: Colors.white, ), child:_pageIndex 0 ? _buildDeviceRow() : _buildMyRow(), ), ) ), ], ); } //设备显示按钮 Widget _buildDeviceRow(){ return Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisSize: MainAxisSize.min, children: [ Container( height: 60, width: 124, margin: EdgeInsets.only(left: 5), decoration: BoxDecoration( borderRadius: BorderRadius.circular(45), gradient: LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [ Color(0xFFA3BCFF), Color(0xFF58E7FD), ] ), ), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Icon(Icons.device_hub,color: Colors.white,), SizedBox(width: 5,), Text(设备,style: TextStyle(color: Colors.white,fontSize: 18),) ], ), ), GestureDetector( onTap: (){ setState(() { _pageIndex 1; }); }, child: Container( height: 30, width: 30, margin: EdgeInsets.only(right: 35), child: Icon(Icons.radio,color: Colors.blue,), ) ), ], ); } //我的显示按钮 Widget _buildMyRow(){ return Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisSize: MainAxisSize.min, children: [ GestureDetector( onTap: (){ setState(() { _pageIndex 0; }); }, child: Container( height: 30, width: 30, margin: EdgeInsets.only(left: 35), child: Icon(Icons.device_hub,color: Colors.blue,), ), ), Container( height: 60, width: 124, margin: EdgeInsets.only(right: 5), decoration: BoxDecoration( borderRadius: BorderRadius.circular(45), gradient: LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [ Color(0xFFA3BCFF), Color(0xFF58E7FD), ] ), ), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ Text(我的,style: TextStyle(color: Colors.white,fontSize: 18),), SizedBox(width:5 ,), Icon(Icons.radio,color: Colors.white,), ], ), ), ], ); } }两个子页面import package:flutter/material.dart; class FirstPage extends StatefulWidget { const FirstPage({super.key}); override StateStatefulWidget createState() _FirstPageState(); } class _FirstPageState extends StateFirstPage with SingleTickerProviderStateMixin { override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.pink.withOpacity(0.1), body: Center( child: Text(FirstPage), ) ); } } import package:flutter/material.dart; class SecondPage extends StatefulWidget { const SecondPage({super.key}); override StateStatefulWidget createState() _SecondPageState(); } class _SecondPageState extends StateSecondPage with SingleTickerProviderStateMixin { override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.pink.withOpacity(0.1), body: Center( child: Text(SecondPage), ) ); } }

相关新闻

最新新闻

免费AI音频处理神器:OpenVINO插件为Audacity带来革命性功能

免费AI音频处理神器:OpenVINO插件为Audacity带来革命性功能

免费AI音频处理神器:OpenVINO插件为Audacity带来革命性功能 【免费下载链接】openvino-plugins-ai-audacity A set of AI-enabled effects, generators, and analyzers for Audacity. 项目地址: https://gitcode.com/gh_mirrors/op/openvino-plugins-ai-audacity …

2026/7/9 1:05:58
133.基于西门子 S7-1200 的智能三色物料分拣控制系统设计

133.基于西门子 S7-1200 的智能三色物料分拣控制系统设计

摘要 本文以工业自动化控制为背景,系统阐述可编程逻辑控制器(PLC)从基础原理到高级编程的完整知识体系。文章从PLC的硬件架构与扫描周期机制出发,深入解析梯形图、结构化文本与顺序功能图三种编程范式的本质差异与适用场景。通过一个完整的物料分拣系统案例,展示从需求分…

2026/7/9 1:05:58
OpenDesign DataStat性能优化:Vue3组合式API与Pinia状态管理实践

OpenDesign DataStat性能优化:Vue3组合式API与Pinia状态管理实践

OpenDesign DataStat性能优化:Vue3组合式API与Pinia状态管理实践 【免费下载链接】opendesign-datastat The repository of OpenDesign datastat 项目地址: https://gitcode.com/openeuler/opendesign-datastat 前往项目官网免费下载:https://ar.…

2026/7/9 1:05:58
开发者如何在Agent平台上构建自己的SaaS应用?全链路架构解析与主流平台选型指南

开发者如何在Agent平台上构建自己的SaaS应用?全链路架构解析与主流平台选型指南

在当前AI技术演进的浪潮中,AI Agent(智能体)正从单一的对话工具向具备复杂推理与执行能力的生产力载体转型。构建基于Agent的SaaS应用已成为企业数字化转型的新范式。开发者在Agent平台上构建应用时,不再仅仅是将大模型封装为交互…

2026/7/9 1:05:58
基于 GPU 的排序加速:内存

基于 GPU 的排序加速:内存

引言 排序算法在计算密集型任务中的重要性GPU 并行计算的优势与传统 CPU 排序的局限性内存布局与线程分配对 GPU 排序性能的关键影响 GPU 排序算法的背景 常见 GPU 排序算法概述(如 Bitonic Sort、Radix Sort、Merge Sort)GPU 架构特性(SI…

2026/7/9 1:05:58
谷歌旧将 Nick Desaulniers 重返,提交补丁助力 Linux 内核发展

谷歌旧将 Nick Desaulniers 重返,提交补丁助力 Linux 内核发展

Nick Desaulniers 回归:Linux 内核贡献者的“二进宫” 曾是 Linux 内核 LLVM 支持维护者的 Nick Desaulniers,在 2025 年 2 月离开谷歌加入特斯拉后停止了对 Linux 内核的贡献。如今,他重返谷歌,并宣布再次为 Linux 内核做贡献。此…

2026/7/9 1:00:58

月新闻