![](/img/trans.png)
[英]how to go back to previous page when refresh the screen in pageview flutter
[英]Flutter Integration Testing- How to go back to previous screen when no back button available on screen
當屏幕上沒有后退按鈕時,如何 go 返回上一屏幕? 附加信息:我正在嘗試對 flutter 應用程序進行自動化集成測試。 屏幕上沒有可用於 go 后退屏幕的后退按鈕。 附加信息:我正在編寫集成測試,同樣我需要 go 返回上一個屏幕。 由於設計原因,屏幕上沒有后退按鈕,我只需要通過腳本來完成。
如果測試的目的也是強調和驗證WillPopScope
回調,則可以使用以下方法:
final dynamic widgetsAppState = _._tester.state(find.byType(WidgetsApp));
await widgetsAppState.didPopRoute();
這個在Flutter官方倉庫中用於測試: https ://github.com/flutter/flutter/blob/master/packages/flutter/test/material/will_pop_test.dart
請注意,此方法也適用於模擬在 Android 上按下的后退按鈕。
這就是動畫包中 OpenContainers 對我有用的東西:
final NavigatorState navigator = tester.state(find.byType(Navigator));
navigator.pop();
await tester.pump();
它用於 flutter 包的測試:
好吧,這可能有點晚了,但是有兩種可能的方法可以實現這一目標:
final backButton = find.byTooltip('Back');
await driver.tap(backButton);
要么:
await driver.tap(find.pageBack());
你可以像這樣使用 ios 提供的
theme: ThemeData(
pageTransitionsTheme: PageTransitionsTheme(
builders: {
TargetPlatform.android: CupertinoPageTransitionsBuilder(),
TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
}
)
),
我的 emulador 默認語言環境是“en_US”,所以我使用“返回”這個詞作為工具提示,它正在工作。
final backButton = find.byTooltip("Back");
await tester.tap(backButton);
await tester.pumpAndSettle();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.