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

临沂网站建设有哪些那些网站权重高

临沂网站建设有哪些,那些网站权重高,网站策划书案例,网站标识描述可以填关键词吗Flutter 的导航页面跳转#xff0c;是通过组件Navigator 和 组件MaterialPageRoute来实现的#xff0c;Navigator提供了很多个方法#xff0c;但是目前#xff0c;我只记录我学习过程中接触到的方法#xff1a; Navigator.push(), 跳转下一个页面Navigator.pop(), 返回上一…Flutter 的导航页面跳转是通过组件Navigator 和 组件MaterialPageRoute来实现的Navigator提供了很多个方法但是目前我只记录我学习过程中接触到的方法 Navigator.push(), 跳转下一个页面Navigator.pop(), 返回上一个页面 1. 不带参数的页面跳转案例 代码如下 import package:flutter/material.dart;void main() {runApp(MaterialApp(title: 导航演示,home: FirstScreen(),)); }class FirstScreen extends StatelessWidget {overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(导航页面),),body: Center(child: ElevatedButton(style: ElevatedButton.styleFrom(backgroundColor: Colors.blueAccent,foregroundColor: Colors.white),onPressed: (){Navigator.push(context, MaterialPageRoute(builder: (context) SecondScreen()));}, child: Text(查看商品详情页))),);} }class SecondScreen extends StatelessWidget {overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(商品详情页)),body: Center(child: ElevatedButton(onPressed: (){Navigator.pop(context);}, child: Text(点击返回)),),);} }效果图 2. 导航常数的传递和接收 代码如下 import package:flutter/material.dart;void main() {runApp(MaterialApp(title: 导航演示,home: ProductList(products: List.generate(20, (i) Product(商品$i, 这是一个商品详情页编号为:$i))))); }class ProductList extends StatelessWidget {// 定义一个参数final ListProduct products;// 接收参数const ProductList({super.key, required this.products});overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar( title: Text(商品列表)),body: ListView.builder(itemCount: products.length,itemBuilder: (context, index) {return ListTile(title: Text(products[index].title),onTap: (){Navigator.push(context, MaterialPageRoute(builder: (context) ProductDetail(product:products[index])));},);}));} }// 商品详情页 class ProductDetail extends StatelessWidget {// 定义一个参数final Product product;const ProductDetail({super.key, required this.product});overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(product.title)),body: Center(child: Text(product.description),),);} }// 定义一个商品的对象 class Product {final String title; // 商品标题final String description; // 商品描述Product(this.title, this.description); }效果图如下 3. 子页面给父级页面返回数据 代码如下 import package:flutter/material.dart;void main() {runApp(MaterialApp(title: 导航演示,home: FirstPage())); }class FirstPage extends StatelessWidget {const FirstPage({super.key});overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(子页面将数据回传给父视图)),body: Center(child: RouteButton(),),);} }class RouteButton extends StatelessWidget {overrideWidget build(BuildContext context) {return ElevatedButton(onPressed: (){_navigateDataToChildView(context);}, child: Text(传递数据));}_navigateDataToChildView(BuildContext context) async {// 等待子视图返回时回传的数据final result await Navigator.push(context, MaterialPageRoute(builder: (context) ChildView()));// 屏幕底部的小弹窗ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text(result)));} }// 子视图 class ChildView extends StatelessWidget {const ChildView({super.key});overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(子视图)),body: Center(child: Column(children: [ElevatedButton(onPressed: (){Navigator.pop(context, 回传这是第一个数据回传);}, style: ElevatedButton.styleFrom(backgroundColor: Colors.blueAccent,foregroundColor: Colors.white),child: Text(第一个数据回传)),ElevatedButton(onPressed: (){Navigator.pop(context, 回传这是第二个数据回传);},style: ElevatedButton.styleFrom(backgroundColor: Colors.orangeAccent,foregroundColor: Colors.white), child: Text(第二个数据回传))],),),);} }效果图如下 Flutter_学习记录_数据回传 4. 设置导航栏的主题色 MaterialApp组件里面有个 theme属性设置theme属性就可以设置导航栏的主题色代码如下 import package:flutter/material.dart;void main() {runApp(MyApp()); }class MyApp extends StatelessWidget {const MyApp({super.key});overrideWidget build(BuildContext context) {return MaterialApp(debugShowCheckedModeBanner: true,home: Contrainer(),// 设置导航栏的主题色theme: ThemeData(appBarTheme: AppBarTheme(backgroundColor: Colors.yellow, // 设置导航栏颜色为蓝色),),);} }5. 导航栏的左右两侧添加操作按钮 AppBar组件中的leading是可以添加左边一个按钮actions是可以添加右边的一组按钮代码实例如下 import package:flutter/material.dart;void main() {runApp(MyApp()); }class MyApp extends StatelessWidget {const MyApp({super.key});overrideWidget build(BuildContext context) {return MaterialApp(debugShowCheckedModeBanner: true,home: Home(),theme: ThemeData(appBarTheme: AppBarTheme(backgroundColor: Colors.yellow, // 设置导航栏颜色为蓝色),),);} }class Home extends StatelessWidget {const Home({super.key});overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(// 添加左边的操作按钮leading: IconButton(onPressed: () debugPrint(navigation button is pressed.), icon: Icon(Icons.menu),tooltip: Navigation,),// 添加右边的操作按钮actions: [IconButton(onPressed: () debugPrint(navigation button is pressed.), icon: Icon(Icons.search),tooltip: search,)],title: Text(App Demo),elevation: 0.0),body: Center(child: Text(添加导航栏的事件),),);} } 效果图如下
http://www.hkea.cn/news/14567352/

相关文章:

  • 手机网站开发教程百度首页广告
  • 汉口网站建设 优帮云最新微网站建设价格
  • 高端定制建站公司建设部资质查询平台
  • 设计的有趣的网站推荐网站建设及推广文案
  • 设计师应该看的网站网页设计学校哪个好
  • 个人网站开发与设计摘要网站模板之家免费模板
  • 门业东莞网站建设技术支持怎么做网站登陆战
  • 个人如何注册网站网站自动站建
  • 敦煌壁画网站开发毕设论文wordpress 最新教程
  • 织梦做的网站后台网络营销公司搭建平台
  • 弄一个关于作文的网站怎么做在线安装软件网站开发
  • 做exo小说的网站网站备案账号是什么情况
  • 电商网站建设开发wordpress换主题
  • 在俄罗斯做网站需要多少卢布做医学网站
  • 没有服务器怎样做网站网站的动态是什么意思
  • 网站建设培训证书域名不备案可以正常使用吗
  • 网站备案名称更改免费网站源码建站系统
  • dremrever做网站流程在哪里能找到建网站
  • 广东网站建设公司xywdl嘉兴网站推广平台
  • 网站管理系统排行榜两山开发公司
  • 免费域名cnseo优化教程自学网
  • 网站免费网站免费麻豆厦门网站建设u
  • 深圳企业网站定制免费企业邮箱如何申请注册
  • 网站制作运营公司dw网页制做教程
  • 免费做网站的方法新浪网站源代码
  • wordpress网站加密方式黄页是干什么用的
  • 企业网站制作设深圳做网站得外包公司
  • 东莞企业推广网站制作建公司网站需要自己有系统吗
  • 开源网站下载学院路网站建设
  • 温州做外贸网站安徽省建设部干部网站