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

网站建设 温州百度指数预测

网站建设 温州,百度指数预测,上海的外贸网站建设公司排名,天津网络网站制作公司前言 这一次被要求实现屏幕上同时展示两个页面,并且两个页面的逻辑,功能互不影响,通俗一点讲就是在Flutter内部实现一个类似于分屏的功能,这可难不倒我。 方法 要在 Flutter 中实现一个屏幕的上半部分和下半部分展示不同的页面…

前言

这一次被要求实现屏幕上同时展示两个页面,并且两个页面的逻辑,功能互不影响,通俗一点讲就是在Flutter内部实现一个类似于分屏的功能,这可难不倒我。

方法

要在 Flutter 中实现一个屏幕的上半部分和下半部分展示不同的页面(我这里是左右两部分),并且两个页面的逻辑互不影响,可以使用 Row 和 Expanded 组件来划分屏幕的左右部分,并分别在这两个部分中使用 Navigator 进行页面导航。还可以依赖 Navigator 在任一页面中对另一个页面的路由进行控制。

效果如下:
在这里插入图片描述

代码

import 'package:date_format/date_format.dart';
import 'package:flutter/material.dart';void main() {runApp(MyApp());
}class MyApp extends StatelessWidget {final GlobalKey<NavigatorState> topNavigatorKey = GlobalKey<NavigatorState>();final GlobalKey<NavigatorState> bottomNavigatorKey =GlobalKey<NavigatorState>();Widget build(BuildContext context) {return MaterialApp(home: Scaffold(body: Row(children: [Expanded(child: Navigator(key: topNavigatorKey,onGenerateRoute: (settings) {return MaterialPageRoute(settings: settings,builder: (_) => TopPage(bottomNavigatorKey: bottomNavigatorKey,),);},),),Expanded(child: Navigator(key: bottomNavigatorKey,onGenerateRoute: (settings) {return MaterialPageRoute(settings: settings,builder: (_) =>BottomPage(), // Placeholder, BottomPage can be added here);},),),],),),);}
}class TopPage extends StatelessWidget {final GlobalKey<NavigatorState> bottomNavigatorKey;TopPage({required this.bottomNavigatorKey});Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Top Page')),body: Padding(padding: const EdgeInsets.all(8.0),child: Column(children: [Center(child: ElevatedButton(child: Text('Go to Top Details'),onPressed: () {Navigator.of(context).push(MaterialPageRoute(builder: (_) => TopDetailsPage()),);},),),SizedBox(height: 20),Center(child: ElevatedButton(child: Text('Show Bottom Page Details'),onPressed: () {// changeBottomPageState();bottomNavigatorKey.currentState!.push(MaterialPageRoute(builder: (_) => BottomDetailsPage()),);},),),]),),);}
}class TopDetailsPage extends StatelessWidget {Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Top Details Page')),body: Center(child: ElevatedButton(child: Text('Go to Bottom Page'), // Add a button to navigate to BottomPageonPressed: () {Navigator.of(context).push(MaterialPageRoute(builder: (_) => BottomPage()),);},),),);}
}class BottomPage extends StatelessWidget {Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Bottom Page')),body: Center(child: ElevatedButton(child: Text('Go to Bottom Details'),onPressed: () {Navigator.of(context).push(MaterialPageRoute(builder: (_) => BottomDetailsPage()),);},),),);}
}class BottomDetailsPage extends StatelessWidget {Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Bottom Details Page')),body: Center(child: Text('This is the Bottom Details Page'),),);}
}

总结

以上就是本期内容啦,如果你有其他的实现方法,欢迎留言一起讨论交流哦。

http://www.tj-hxxt.cn/news/65088.html

相关文章:

  • 西宁网站建设建站如何建造自己的网站
  • 连运港网络公司做网站温州百度推广公司电话
  • 付费网站怎么做河北seo基础入门教程
  • 一个ip 做2个网站吗免费智能seo收录工具
  • win2008sr怎么用iis做网站semi final
  • 换网站后台seo网站有优化培训吗
  • 做网站有用没网络公关
  • 郑州网站设计 公司搜索引擎排名查询
  • 网站系统管理网络营销的优势是什么
  • 沙河口网站建设万网官网
  • 网站内容更新最新国内新闻事件今天
  • 建站平台和网站开发的区别万网域名注册流程
  • wordpress头像怎么修改南宁网站seo大概多少钱
  • 三都网站建设超级外链吧
  • 爱网站排行注册公司网站
  • 百度如何投放广告东莞整站优化排名
  • 福州网站制作服务百度seo提高排名费用
  • 网站模板怎么使用教程怎么做链接推广产品
  • 做idc销售怎样建网站nba新闻最新消息滚动
  • 用java编程做网站长沙关键词优化新行情报价
  • 北京企业网站开发公司哪家好营销网站都有哪些
  • 广州货运网站建设百度关键词挖掘工具爱站网
  • 哈尔滨疫情数据成都纯手工seo
  • 济阳做网站多少钱电商网站网址
  • 东莞清溪镇做网站公司网站做成app
  • 建行网站会员是什么最近有新病毒出现吗
  • 建设中的网站备案期间做什京津冀协同发展
  • 西宁网站建设报价贴心君博bapp广告联盟
  • 网站布局策划案成都网站优化排名推广
  • 建设银行企业网银网站无法打开营销策略有哪些方法