【发布时间】:2021-09-16 08:47:14
【问题描述】:
我是 Flutter 的新手,我正在尝试实现一个简单的布局,其中布局是一列小部件,列中的第一项是文本小部件,第二项是包含多个提升的行按钮,这是我的代码,它将提升的按钮彼此下方呈现,而不是彼此相邻呈现,所以我在这里做错了什么?
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
final List<Map<String, dynamic>> questions = [
{
'question': "What's your favorite color?",
'answers': ['Red', 'Blue', 'White', 'Black']
},
{
'question': "What's your favorite animal?",
'answers': ['Dog', 'Cat', 'Lion', 'Monkey']
}
];
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Quiz'),
),
body: Container(
height: double.maxFinite,
child: ListView.builder(
shrinkWrap: true,
itemCount: questions.length,
itemBuilder: (BuildContext context, int questionsIndex) {
return Column(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
SizedBox(height: 20.0,),
Text(questions[questionsIndex]['question']),
SizedBox(height: 10.0,),
ListView.builder(
itemCount:
questions[questionsIndex]['answers'].length,
shrinkWrap: true,
itemBuilder: (BuildContext context, int answerIndex) {
return Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
ElevatedButton(
onPressed: null,
child: Text(questions[questionsIndex]
['answers'][answerIndex]),
),
],
);
}),
SizedBox(height: 20.0,),
]);
}),
),
),
);
}
}
【问题讨论】:
标签: flutter dart flutter-layout