展开

关键词

一个Flutter WebView侧滑bug的解决方案

问题定位 2.1 猜测WebView内部手势外部手势冲突 首先猜测是不是内部的滑动手势跟外部的冲突,因此找到了iOS WKWebView管理内部侧滑的API。 self.webview.allowsBackForwardNavigationGestures = true; 而在Flutter中对应的API则是webview的初始化参数 child: WebView null : popCallback, 到这里就可以实现iOS侧滑返回的问题,但是带来新的问题是这里的手势WKWebView内部冲突,webview内部无法返回。 因此在iOS中实现了一下WKWebView的KVO,将一些信息canGoBack通过channel回调到Flutter。 = self.mpWebview.canGoBack; [self.navigationController.interactivePopGestureRecognizer setEnabled

60430

iOS学习—— UINavigationController的返回按钮与侧滑返回手势的研究

在开发过程中,对侧滑返回进行控制非常简单,主要就是启动侧滑手势禁用侧滑手势。首先,我们来看一下 UINavigationController 的 @property ,可以找到下面这个属性。 UINavigationControllerinteractivePopGestureRecognizer这个属性就是我们的侧滑返回手势,如果你的项目中没有需求要自定义返回按钮(虽然我觉得这并不太可能 self.navigationController.interactivePopGestureRecognizer.enabled = YES; //启用侧滑手势 self.navigationController.interactivePopGestureRecognizer.enabled UINavigationController有效的,所以一旦你在某个界面禁用了侧滑,那么该UINavigationController控制下的所有viewController都会禁用侧滑,这显然是不合理的 2.3 backBarButtonItemleftBarButtonItem的区别 backBarButtonItem另外两兄弟是有区别的,比如当前有AController准备push到BController

3.5K60
  • 广告
    关闭

    腾讯云精选爆品盛惠抢购

    腾讯云精选爆款云服务器限时体验20元起,还有更多热门云产品满足您的上云需求

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    分享超详细 WKWebView 开发使用经验

    根据需求需要将老项目中的 WebView 替换成 WKWebView,期间查阅了不少文档资料,之前也发布了几篇 WKWebView 相关的优秀文章。 WKWebView 几个不常用的特性 WKWebview 加载过程中的性能指标图解 WKWebview 秒开的实践及踩坑之路 今天分享的这篇文章全面的介绍了 WKWebView,作者根据开发使用经验从属性 通过 [WKWebView loadData:] [WKWebView loadHTMLString:] 方法仅能加载当前HTML内容,无法加载资源文件,这种加载模式下,由于不需要访问其他路径下的资源 allowsBackForwardNavigationGestures: 允许手势交互进行页面导航跳转 customUserAgent: 自定义 Web 页面的 UserAgent,会覆盖容器原有的 User-Agent javaScriptEnabled: 是否启用 js 脚本,默认启用,关闭则不会运算 js 脚本,加快渲染速度。

    77330

    WKWebView详解

    WKWebView主要涉及到以下类或协议,各部分可能互相依赖,文章按照apple文档的划分对每一个模块进行了详细的解释 WKWebView 配置偏好 WKWebViewConfiguration WKPreferences 从iOS 8.0OS X 10.10开始,建议使WKWebView在应用程序中展示web内容,建议不要使用UIWebView或WebView。 @property(nonatomic) BOOL allowsBackForwardNavigationGestures; 当前WebView的前进后退记录 @property (nonatomic webview的偏好选项,在WKWebViewConfiguration中设置 最小字体的尺寸 @property(nonatomic) CGFloat minimumFontSize; 默认值是0 是否启用一个输入框 通知app网页的DOM窗口已经关闭 - (void)webViewDidClose:(WKWebView *)webView; app应该从控件关系中移除这个WebView并重新安排界面的显示

    10.4K182

    扫码关注云+社区

    领取腾讯云代金券