如何在listview的第一项和appbar之间留出空间.颤振分开



我在项目之间有空间,但在appbar和第一项之间没有,我如何在那里添加空间?这是我的代码

body: ListView.separated(
itemCount: 2,
itemBuilder: (BuildContext context,int index){
return Container(
decoration: BoxDecoration(
border: Border.all(
color: Color.fromARGB(100, 141, 166, 255),
width: 0.5

),
borderRadius: BorderRadius.circular(10)
),
height: 80,
child: Text('1234'),
);
},
separatorBuilder: (BuildContext context, int index){
return Container(
height: 80,
color: Color.fromARGB(100, 141, 166, 255),
);
}
),
);

你可以在ListView中从顶部添加Padding。看到

所以你可以添加padding:

body: ListView.separated(

//added Padding from top
padding:EdgeInsets.only(top:80),

itemCount: 2,
itemBuilder: (BuildContext context,int index){
return Container(
decoration: BoxDecoration(
border: Border.all(
color: Color.fromARGB(100, 141, 166, 255),
width: 0.5

),
borderRadius: BorderRadius.circular(10)
),
height: 80,
child: Text('1234'),
);
},
separatorBuilder: (BuildContext context, int index){
return Container(
height: 80,
color: Color.fromARGB(100, 141, 166, 255),
);
}
),
);

可以使用sizebox: https://api.flutter.dev/flutter/widgets/SizedBox-class.html

示例:

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(
appBar: AppBar(
title: const Text('Welcome to Flutter'),
),
body: Column(
children: [
SizedBox(
height: 20, // change value as per your need
),
ListView.separated(
shrinkWrap: true,
itemCount: 2,
itemBuilder: (BuildContext context, int index) {
return Container(
decoration: BoxDecoration(
border: Border.all(color: Color.fromARGB(100, 141, 166, 255), width: 0.5),
borderRadius: BorderRadius.circular(10)),
height: 80,
child: Text('1234'),
);
},
separatorBuilder: (BuildContext context, int index) {
return Container(
height: 80,
color: Color.fromARGB(100, 141, 166, 255),
);
}),
],
)));
}
}

最新更新