#layout #dart #flutter
#макет #dart #трепетание
Вопрос:
Я разрабатываю приложение, которое включает GridView, вот самая простая форма кода:
return OrientationBuilder(builder: (context, orientation) {
return RefreshIndicator(
onRefresh: refreshList,
child: new GridView.builder(
itemCount: dergiler.length,
gridDelegate: new SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
mainAxisSpacing: 1.0,
crossAxisSpacing: 1.0,
childAspectRatio: 0.7),
itemBuilder: (BuildContext context, int index) {
return Container(
alignment: Alignment.center,
child: Dergielemet(dergiler[index], index),
);
},
),
);
});
Когда я использую дочернюю спецификацию as как 0.7, я получаю то, что хочу. Вот изображение:
Однако, когда я пробую тот же код на другом устройстве с немного другим размером экрана, возникают ошибки переполнения, поскольку элементы GridView переполняют друг друга. Пример:
Ответ №1:
используйте в качестве дочерней структуры что-то вроде этого
MediaQuery.of (context).size.height/980