Dart 如何在文本中包含小部件?
我正在创建一个小部件,希望在flatter中的文本字符串之间有一个下拉菜单。如何实现类似于图像在Flutter中显示的内容Dart 如何在文本中包含小部件?,dart,flutter,flutter-layout,Dart,Flutter,Flutter Layout,我正在创建一个小部件,希望在flatter中的文本字符串之间有一个下拉菜单。如何实现类似于图像在Flutter中显示的内容 我想这就是你需要的。您可以创建自定义小部件,这样就不必总是编写代码 class _MyHomePageState extends State<MyHomePage> { String selectedItem = 'withdraw'; Widget build(BuildContext context) { return new Scaff
我想这就是你需要的。您可以创建自定义小部件,这样就不必总是编写代码
class _MyHomePageState extends State<MyHomePage> {
String selectedItem = 'withdraw';
Widget build(BuildContext context) {
return new Scaffold(
body: Center(
child: Wrap(
alignment: WrapAlignment.center,
crossAxisAlignment: WrapCrossAlignment.center,
children: <Widget>[
Text('Enemy troops chose to '),
DropdownButton<String>(
value: selectedItem,
items: [
DropdownMenuItem<String>(
value: 'withdraw',
child: Text('withdraw'),
),
DropdownMenuItem<String>(
value: 'adverse',
child: Text('adverse'),
),
DropdownMenuItem<String>(
value: 'celebrate',
child: Text('celebrate'),
),
],
onChanged: (item) {
selectedItem = item;
setState(() {});
},
),
Text(' to their camps, planning a new attack strategy.'),
],
),
),
);
}
}
class\u MyHomePageState扩展状态{
字符串selectedItem='draw';
小部件构建(构建上下文){
归还新脚手架(
正文:中(
孩子:包裹(
对齐:wrappalignment.center,
crossAxisAlignment:WrapCrossAlignment.center,
儿童:[
文本(‘敌军选择了’),
下拉按钮(
值:selectedItem,
项目:[
下拉菜单项(
值:“撤回”,
子项:文本('draw'),
),
下拉菜单项(
价值:'不利',
child:Text(‘不利’),
),
下拉菜单项(
价值观:“庆祝”,
child:Text(‘庆祝’),
),
],
更改后:(项目){
选择editem=项目;
setState((){});
},
),
文本(‘到他们的营地,计划新的攻击策略’),
],
),
),
);
}
}
我想这就是你需要的。您可以创建自定义小部件,这样就不必总是编写代码
class _MyHomePageState extends State<MyHomePage> {
String selectedItem = 'withdraw';
Widget build(BuildContext context) {
return new Scaffold(
body: Center(
child: Wrap(
alignment: WrapAlignment.center,
crossAxisAlignment: WrapCrossAlignment.center,
children: <Widget>[
Text('Enemy troops chose to '),
DropdownButton<String>(
value: selectedItem,
items: [
DropdownMenuItem<String>(
value: 'withdraw',
child: Text('withdraw'),
),
DropdownMenuItem<String>(
value: 'adverse',
child: Text('adverse'),
),
DropdownMenuItem<String>(
value: 'celebrate',
child: Text('celebrate'),
),
],
onChanged: (item) {
selectedItem = item;
setState(() {});
},
),
Text(' to their camps, planning a new attack strategy.'),
],
),
),
);
}
}
class\u MyHomePageState扩展状态{
字符串selectedItem='draw';
小部件构建(构建上下文){
归还新脚手架(
正文:中(
孩子:包裹(
对齐:wrappalignment.center,
crossAxisAlignment:WrapCrossAlignment.center,
儿童:[
文本(‘敌军选择了’),
下拉按钮(
值:selectedItem,
项目:[
下拉菜单项(
值:“撤回”,
子项:文本('draw'),
),
下拉菜单项(
价值:'不利',
child:Text(‘不利’),
),
下拉菜单项(
价值观:“庆祝”,
child:Text(‘庆祝’),
),
],
更改后:(项目){
选择editem=项目;
setState((){});
},
),
文本(‘到他们的营地,计划新的攻击策略’),
],
),
),
);
}
}
我们可以用文本中的每个空格拆分文本字符串。每个拆分的文本部分都是一个单独的小部件。因此,我们可以在其他小部件之间放置一个下拉小部件。例如:
在问题的示例中,我们应该有13个小部件,其中12个是文本小部件,其中一个是下拉小部件。然后,我们可以将所有这些小部件放在包装小部件中,以显示类似于此图片的内容。我们可以使用文本中的每个空格拆分文本字符串。每个拆分的文本部分都是一个单独的小部件。因此,我们可以在其他小部件之间放置一个下拉小部件。例如:
在问题的示例中,我们应该有13个小部件,其中12个是文本小部件,其中一个是下拉小部件。然后我们可以将所有这些小部件放在包装小部件中,以显示类似于此图片的内容。我想您不能。壁橱选项使用flex属性在两个文本小部件之间放置一个小部件。我在原生android中使用web view做过类似的事情,我认为web view是最好的方法。谢谢,你能分享你的android代码吗?我想你不能。壁橱选项使用flex属性在两个文本小部件之间放置一个小部件。我在原生android中使用web view做过类似的事情,我认为web view是最好的方法。谢谢,你能分享你的android代码吗??