我的 inAppWebView 在 iOS 上识别后退和前进手势(从左/右边缘向内滑动)并自动执行相应的 goBack/goForward(没有为此添加代码)。
但在 Android 上它什么都不做——它根本不会对从左/右边缘向内滑动做出反应。
是否需要做任何事情/设置才能使这项工作在 Android 上也能正常工作?
我的结构是:SafeArea -> Scaffold -> Container -> Expanded -> Container -> InAppWebView
任何地方都没有明确或自定义的手势识别器。
我尝试使用 inAppWebView 属性“gestureRecognizers”——但没有任何效果。无论我在其中放置什么手势识别器,inAppWebView 的行为都完全相同。所以那个财产对我来说似乎什么都不做。
使用这个 InAppWebView 你需要创建一个这样的函数:
Future<bool> _handleBackButton() async {
if (_webViewController != null && await _webViewController!.canGoBack()) {
_webViewController!.goBack();
return true;
} else {
return false;
}
}
并使用 WillPopScope 小部件包装 InAppWebview
return WillPopScope(
onWillPop: _handleBackButton,