| // Copyright 2014 The Flutter Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| import 'package:flutter/material.dart'; | |
| class HeavyGridViewPage extends StatelessWidget { | |
| const HeavyGridViewPage({super.key}); | |
| @override | |
| Widget build(BuildContext context) { | |
| return GridView.builder( | |
| itemCount: 1000, | |
| gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3), | |
| itemBuilder: (BuildContext context, int index) => HeavyWidget(index), | |
| ).build(context); | |
| } | |
| } | |
| class HeavyWidget extends StatelessWidget { | |
| HeavyWidget(this.index) : super(key: ValueKey<int>(index)); | |
| final int index; | |
| final List<int> _weight = List<int>.filled(1000000, 0); | |
| @override | |
| Widget build(BuildContext context) { | |
| return SizedBox( | |
| width: 200, | |
| height: 200, | |
| child: Text('$index: ${_weight.length}'), | |
| ); | |
| } | |
| } |