#flutter
#flutter
Вопрос:
Я смог реализовать прокручиваемый горизонтальный список в flutter. Но мне нужно поместить полосу прокрутки в середину списка. Прямо сейчас находится слева, что является отправной точкой моего списка.
вот мой текущий прокручиваемый listview
Widget build(BuildContext context) {
return Container(
// padding: EdgeInsets.symmetric(horizontal: 16.0, vertical: 24.0),
margin: EdgeInsets.all(5.0),
height: MediaQuery.of(context).size.height * 0.25,
child: Scrollbar(
isAlwaysShown: true,
controller: _scrowllController,
thickness: 3.0,
child: ListView.builder(
controller: _scrowllController,
scrollDirection: Axis.horizontal,
itemCount: numbers.length,
itemBuilder: (context, index) {
return Container(
width: MediaQuery.of(context).size.width * 0.4,
child: Card(
color: Colors.blue,
margin: EdgeInsets.only(bottom:30.0, right: 10.0),
child: Container(
child: Center(
child: Text(
numbers[index].toString(),
style: TextStyle(color: Colors.white, fontSize: 36.0),
)),
),
),
);
},
),
),
);
}
вот что показывает приведенный выше код введите описание изображения здесь
И это то, что я хочу показать при первом открытии приложения введите описание изображения здесь
Ответ №1:
Установите initialScrollOffset вашего ScrollController равным numbers.length / 2 * itemWidth
Кроме того, поскольку все ваши элементы имеют одинаковую ширину, я рекомендую установить itemExtent
значение ListView, поскольку это сильно влияет на производительность
Комментарии:
1. Спасибо за ответ. Но как получить числа и ItemWidth, которые вы упомянули в своем ответе. Извините, я новичок в flutter