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, 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( 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), double.infinity, child: TextField( maxLines: 8, ), ), Container( padding: EdgeInsets.only(left: 10.0, right: 10.0), 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), 70.0, child: RaisedButton(onPressed: (){}, child: Text('GET'),), ), ], ), ], )), ], ), ), Container( padding: EdgeInsets.only(left: 10.0, right: 10.0), double.infinity, child: Row( children: <Widget>[ Container( child: Text('Name:'), ), Expanded( flex: 1, child: Container( child: TextField( maxLines: 1, ), )), SizedBox( 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), double.infinity, child: Row( children: <Widget>[ Container( child: Text('Registrar:'), ), Expanded( flex: 1, child: Container( child: TextField( maxLines: 1, ), )), SizedBox( 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), double.infinity, child: Row( children: <Widget>[ Container( child: Text('Registrar:'), ), Expanded( flex: 1, child: Container( child: TextField( maxLines: 1, ), )), SizedBox( 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), double.infinity, child: Row( children: <Widget>[ Container( child: Text('Registrar:'), ), Expanded( flex: 1, child: Container( child: TextField( maxLines: 1, ), )), SizedBox( 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), double.infinity, child: Row( children: <Widget>[ Container( child: Text('Registrar:'), ), Expanded( flex: 1, child: Container( child: TextField( maxLines: 1, ), )), SizedBox( 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: () {}), ), // ], ), ) ), ), );