在我的应用程序中,小部件树是DeleteItemGestureDetector-〉InvoiceTotalWidget-〉ItemListWidget -〉ListView -〉EditInvoiceClass
我试着用PatrolTest
await $(#InvoiceTotal).$(#DeleteItem).scrollTo().tap();
$.pumpAndSettle;
来测试DeleteItem手势检测器但我得到了一个异常
WaitUntilVisibleTimeoutException (TimeoutException after 0:00:10.000000: Finder exactly one widget with key \[\<'DeleteItem'\>\] that has ancestor(s) with key \[\<'InvoiceTotal'\>\] (ignoring all but first) (ignoring offstage widgets): GestureDetector-\[\<'DeleteItem'\>\](startBehavior: start, dependencies: \[MediaQuery, \_ScrollableScope\]) did not find any visible widgets)
我想知道为什么DeleteItem GestureDetector是不可见的?我如何解决这个问题?
我的Flutter代码附在下面。
一个一个二个一个一个一个三个一个一个一个一个一个四个一个
我已经尝试将这个按钮的位置移到ListView的前面,以确保按钮已经生成,但这仍然不能使按钮可见。
1条答案
按热度按时间vyswwuz21#
尝试将密钥
const Key('EnterNaturalNum')
添加到Text
小部件本身,而不是GestureDetector
。或者,您可以尝试将
GestureDetector.behavior
设置为HitTestBehavior.opqaue。