【发布时间】:2019-02-18 04:30:13
【问题描述】:
我有以下 Flutter 代码,我试图弄清楚如何将第 1 部分放入一个单独的类中,以便我可以在多个屏幕上重复使用它,然后分别(不是同时,而是),如何将第 2 部分(这是代码的较大部分)放入一个单独的类中,以及如何在多个页面上重用该部分,并使用一个变量来更改标题。目前,我只是将整个代码复制并粘贴到每个屏幕中,但我知道通过重用代码必须有更好的方法。
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Welcome to Flutter',
home: Scaffold(
//------------------START SECTION 2---------------------------------------------
appBar: AppBar(
backgroundColor: Colors.blue,
title: Text(
"Welcome",
style: TextStyle(color: Colors.white),
),
actions: <Widget>[
// action button
//------------------START SECTION 1---------------------------------------------
PopupMenuButton<String>(
//onSelected: showMenuSelection
//icon: new Icon(Icons.add, color: Colors.blueGrey),
itemBuilder: (BuildContext context) => <PopupMenuItem<String>>[
const PopupMenuItem<String>(
value: 'Item 1', child: Text('Item 1')),
const PopupMenuItem<String>(
value: 'Item 2', child: Text('Item 2')),
],
),
//------------------END SECTION 1---------------------------------------------
],
),
//------------------END SECTION 2---------------------------------------------
body: Center(
child: Text('Hello World'),
),
),
);
}
}
【问题讨论】: