Я пытаюсь написать код, который позволил бы мне прокручивать список обычными средствами (нажмите на экран, удерживайте его, а затем перетащите его вверх или вниз).
Дело в том, что я хотел бы, чтобы список частично перекрывался контейнерами, некоторые из которых не полностью прозрачны (сейчас я пытаюсь использовать для этого Stack).
Я заметил, что это работает, но только частично, и это потому, что я могу прокручивать список, только если я запускаю прокрутку, нажимая на экран, где находится полностью прозрачный контейнер - средний контейнер без определенного цвета ( проверьте код ниже). Любые попытки прокручивать список, нажимая на экран где-либо еще - я имею в виду в частично непрозрачных контейнерах (выше или ниже), он не прокручивается.
Очевидно, я хотел бы иметь возможность начать прокрутку, нажав в любом месте экрана, поэтому любые предложения будут с благодарностью!
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
void main() => runApp(
MaterialApp(
home: TestWidget(),
)
);
class TestWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
final size = MediaQuery.of(context).size;
return Scaffold(
body: Stack(
children: [
Container(
child: ListView(
children: List.generate(20,
(no) => ListTile(
leading: Text((no+1).toString()),
title: Text('Some title: ${no+1}'),
trailing: Icon(Icons.check),
)
),
)
),
Column(
children: [
Container(
color: Colors.black.withOpacity(.7),
width: size.width,
height: size.height/3,
),
Container(
// can scroll if scrolling starts in a container with the line like the one below is commented out
// color: Colors.black.withOpacity(.7),
width: size.width,
height: size.height/3
),
Container(
color: Colors.black.withOpacity(.7),
width: size.width,
height: size.height/3
)
]
)
]
)
);
}
}