我正在尝试检测屏幕上的点击。我已经尝试过使用GestureDetector
的多种方式,但这只会导致应用程序检测到子元素和不是屏幕上的点击。
这里是代码:
class QQHome extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, theme: ThemeData( primaryColor: Colors.blueGrey, ), home: Scaffold( appBar: AppBar( centerTitle: true, title: Text('QuoteQuota'), ), body: GestureDetector( onTap: () => print('Tapped'), child: QQBody(), ), ), ); } } class QQBody extends StatelessWidget { @override Widget build(BuildContext context) { return Center( child: Text( 'Hello, World!' ), ); } }
输出:当我单击“ Hello,World!”时打印出“ tapped”。
[预期输出:当我在屏幕上的任意位置单击以文本为中心时,将打印“ tapped”。
我该怎么做?
我正在尝试检测屏幕上的点击。我已经尝试过使用GestureDetector进行多种变体,但这只会导致应用程序检测子元素而不是屏幕上的点击。这是...
使用GestureDetector's
behavior
属性并将其传递给HitTestBehavior.opaque
,该属性可识别整个屏幕并在您点击屏幕上的任意位置时检测到点击。
请使用下面的代码-