@@ -6,7 +6,7 @@ import 'package:flutter/material.dart';
6
6
7
7
import '../constants/picker_method.dart' ;
8
8
9
- class MethodListView extends StatelessWidget {
9
+ class MethodListView extends StatefulWidget {
10
10
const MethodListView ({
11
11
Key ? key,
12
12
required this .pickMethods,
@@ -16,10 +16,17 @@ class MethodListView extends StatelessWidget {
16
16
final List <PickMethod > pickMethods;
17
17
final Function (PickMethod method) onSelectMethod;
18
18
19
+ @override
20
+ _MethodListViewState createState () => _MethodListViewState ();
21
+ }
22
+
23
+ class _MethodListViewState extends State <MethodListView > {
24
+ final ScrollController _controller = ScrollController ();
25
+
19
26
Widget methodItemBuilder (BuildContext context, int index) {
20
- final PickMethod model = pickMethods[index];
27
+ final PickMethod model = widget. pickMethods[index];
21
28
return InkWell (
22
- onTap: () => onSelectMethod (model),
29
+ onTap: () => widget. onSelectMethod (model),
23
30
onLongPress: model.onLongPress,
24
31
child: Container (
25
32
padding: const EdgeInsets .symmetric (
@@ -76,11 +83,13 @@ class MethodListView extends StatelessWidget {
76
83
horizontal: 10 ,
77
84
).copyWith (bottom: 10.0 ),
78
85
child: Scrollbar (
86
+ controller: _controller,
79
87
isAlwaysShown: true ,
80
88
radius: const Radius .circular (999 ),
81
89
child: ListView .builder (
90
+ controller: _controller,
82
91
padding: const EdgeInsets .symmetric (vertical: 10.0 ),
83
- itemCount: pickMethods.length,
92
+ itemCount: widget. pickMethods.length,
84
93
itemBuilder: methodItemBuilder,
85
94
),
86
95
),
0 commit comments