body: CustomScrollView(
slivers: [
SliverList(
delegate: SliverChildBuilderDelegate(
(context, int index) {
Container postPiece;
if (index == 0) {
//post owner
postPiece = Container(
padding: EdgeInsets.all(2.0),
child: Flex(
direction: Axis.vertical,
mainAxisSize: MainAxisSize.min,
children: <Widget>[
Container(
padding: EdgeInsets.all(3.0),
color: Colors.black38,
child: Column(
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Container(
height: 50.0,
width: 50.0,
child: Image.network(
content.ownerAvatar,
fit: BoxFit.cover,
),
padding: EdgeInsets.all(7.0),
),
Expanded(
child: Container(
padding: EdgeInsets.only(left: 7.0),
child: Text(
content.owner,
),
alignment: Alignment.centerLeft,
),
), Container(
alignment: Alignment.centerRight,
child: Text(content.mainPostTime +
' ' +
content.click),
), ],
), ],
),
),
Flexible(
child: Container(
padding: EdgeInsets.all(7.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: content.mainPost,
),
),
),
Container(
child: PublicFunc(),
),
Divider(
color: Colors.black38,
),
],
));
} else if (content.replyPosts.length > 0) {
//replies
if (content.replyPosts.length > index) {
postPiece = Container(
padding: EdgeInsets.all(2.0),
child: Flex(
direction: Axis.vertical,
mainAxisSize: MainAxisSize.min,
children: <Widget>[
Container(
height: 50.0,
color: Colors.black38,
child: Row(
children: <Widget>[
Container(
padding: EdgeInsets.all(7.0),
child: Image.network(
content.replyPosts[index]
['avatar']), //avatar
),
Container(
padding: EdgeInsets.only(left: 10.0),
child: Text(content.replyPosts[index]
['name']), //name
),
Expanded(
child: Container(
alignment: Alignment.centerRight,
child: Text(
content.replyPosts[index]['time']),
),
),
],
),
),
Container(
padding: EdgeInsets.all(10.0),
alignment: Alignment.topLeft,
child: content.replyPosts[index]['content'][0],
),
],
));
} else if (content.replyPosts.length == index) {
//bottom last reply
postPiece = Container(
padding: EdgeInsets.all(2.0),
child: Flex(
direction: Axis.vertical,
mainAxisSize: MainAxisSize.min,
children: <Widget>[
Container(
height: 50.0,
color: Colors.black38,
padding: EdgeInsets.all(7.0),
child: Row(
children: <Widget>[
Container(
child: Image.network(
content.replyPosts[index]
['avatar']), //avatar
),
Container(
padding: EdgeInsets.only(left: 10.0),
child: Text(content.replyPosts[index]
['name']), //name
),
Expanded(
child: Container(
alignment: Alignment.centerRight,
child: Text(
content.replyPosts[index]['time']),
),
),
],
),
),
Container(
padding: EdgeInsets.all(10.0),
alignment: Alignment.topLeft,
child: content.replyPosts[index]['content'][0],
),
Container(
child: Text('1,2,3,4,5 pages'),
),
],
));
}
}
return postPiece;
},
childCount: content.replyPosts.length + 1,
),
),
],
),

  

SingleChildScrollView

return SafeArea(
child: Scaffold(
appBar: AppBar(
title: Text('add Prefix'),
),
body: Container(
width: double.infinity,
height: MediaQuery.of(context).size.height -
MediaQuery.of(context).padding.bottom -
MediaQuery.of(context).padding.top,
child: SingleChildScrollView(
child: Column(
children: <Widget>[
Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
width: double.infinity,
child: TextField(
maxLines: 8,
),
), Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
width: double.infinity,
child: Row(
children: <Widget>[
Expanded(
child: Column(
children: <Widget>[ Row(
children: <Widget>[ Expanded(
flex: 5,
child: Container(
padding: EdgeInsets.only(left: 5, right: 5),
child: TextField(
decoration: InputDecoration(
labelText: 'Whois Server'
),
),
)), Expanded(
flex: 1,
child: Container(
padding: EdgeInsets.only(left: 5, right: 5),
child: TextField(
controller: portController,
decoration: InputDecoration(
labelText: 'Port'
),
),
)), ],
), Row(
children: <Widget>[ Expanded(
flex: 3,
child: Container(
padding: EdgeInsets.only(left: 5, right: 5),
child: TextField(
decoration: InputDecoration(
labelText: 'Domain'
),
),
)), Container(
margin: EdgeInsets.only(left: 5, right: 5),
width: 70.0,
child: RaisedButton(onPressed: (){}, child: Text('GET'),),
), ],
), ],
)), ],
),
), Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
width: double.infinity,
child: Row(
children: <Widget>[
Container(
child: Text('Name:'),
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
SizedBox(
width: 5.0,
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
Container(
child: IconButton(
icon: Icon(Icons.arrow_forward_ios),
onPressed: () {}),
),
],
),
), Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
width: double.infinity,
child: Row(
children: <Widget>[
Container(
child: Text('Registrar:'),
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
SizedBox(
width: 5.0,
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
Container(
child: IconButton(
icon: Icon(Icons.arrow_forward_ios),
onPressed: () {}),
),
],
),
), Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
width: double.infinity,
child: Row(
children: <Widget>[
Container(
child: Text('Registrar:'),
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
SizedBox(
width: 5.0,
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
Container(
child: IconButton(
icon: Icon(Icons.arrow_forward_ios),
onPressed: () {}),
),
],
),
), Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
width: double.infinity,
child: Row(
children: <Widget>[
Container(
child: Text('Registrar:'),
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
SizedBox(
width: 5.0,
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
Container(
child: IconButton(
icon: Icon(Icons.arrow_forward_ios),
onPressed: () {}),
),
],
),
), Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
width: double.infinity,
child: Row(
children: <Widget>[
Container(
child: Text('Registrar:'),
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
SizedBox(
width: 5.0,
),
Expanded(
flex: 1,
child: Container(
child: TextField(
maxLines: 1,
),
)),
Container(
child: IconButton(
icon: Icon(Icons.arrow_forward_ios),
onPressed: () {}),
),
],
),
), Container(
padding: EdgeInsets.only(left: 10.0, right: 10.0),
child: RaisedButton(
child: Text('SAVE'), onPressed: () {}),
), //
],
),
)
),
),
);

  

04-26 18:51