Pull-to-Refresh API(下拉刷新)
在您的 iOS WebView 应用中启用原生下拉刷新手势,自定义其颜色,并从您的 Web 应用动态开启或关闭。
Pull-to-Refresh API(下拉刷新)为您的 WebView 应用添加 iOS 原生的下拉刷新手势:用户向下拖动页面即可重新加载当前 URL——就像邮件或 Safari 等原生应用一样。
如何启用:
打开 Config.swift 并设置:
var pulltorefresh = true var preventoverscroll = false
pulltorefresh启用原生刷新控件。preventoverscroll必须设置为false——该手势需要 WebView 的回弹(overscroll)动画才能工作。
自定义颜色:
您可以在 Config.swift 中分别为浅色模式和深色模式设置加载指示器及其背景的颜色:
var pulltorefresh_loadingsigncolour_lightmode = #colorLiteral(...) var pulltorefresh_backgroundcolour_lightmode = #colorLiteral(...) var pulltorefresh_loadingsigncolour_darkmode = #colorLiteral(...) var pulltorefresh_backgroundcolour_darkmode = #colorLiteral(...)
提示:在 Xcode 中点击每个 #colorLiteral 旁边的色块即可直观地选择颜色。深色模式变体需要 iOS 13 或更高版本。
从您的 Web 应用动态切换:
您可以在运行时开启或关闭下拉刷新——例如,在带有自己滑动手势的页面(地图、滑块、游戏)上将其禁用:
<a href="enablepulltorefresh://">启用下拉刷新</a> <a href="disablepulltorefresh://">禁用下拉刷新</a>
或通过 JavaScript:
window.location.href = "disablepulltorefresh://";
这两个命令也可以在 MultiAPICall 请求中使用。
值得了解:
- 刷新控件会重新加载 WebView 中当前显示的 URL。
- 如果您使用 Dynamic UI API 在运行时更改底部栏颜色,下拉刷新的颜色会自动进行匹配调整。
SDK 风格的实现说明
将此功能视为向 Web 层公开的原生能力:将生产网站或 PWA 作为唯一可信来源,然后使用文档中的 WebViewGold 配置标志、URL 命令和 JavaScript 桥接调用,仅在能够带来价值的地方启用原生 iOS 行为。这种方式让代码库易于维护,因为同一个 Web 应用只需极少的条件逻辑即可同时服务于浏览器、WebViewGold for iOS 以及其他 WebViewGold 平台。
为获得可靠的结果,建议优先使用 HTTPS 端点、稳定的路由名称、在界面中明确的成功/错误状态,以及封装原生调用的小型 JavaScript 辅助函数。例如,使用 jQuery Mobile、Lovable、Base44、Bolt、WordPress、Bubble、自定义 React/Vue/Angular 技术栈或静态 HTML 构建的 Web 应用,可以提供单个按钮或事件处理程序来触发原生 WebViewGold API,同时仍为浏览器提供优雅的回退方案。
- 推荐的集成模式:检测应用上下文,调用 WebViewGold API,然后在原生回调或路由变更后更新 Web 界面。
- 测试清单:在真机或打包构建上验证该功能,检查权限和商店审核文案,并确认仅使用浏览器的用户仍能获得有用的回退方案。
- SEO 优势:让功能页面、路由标题和结构化内容在您的网站上保持可被索引,同时由 WebViewGold 为 iOS 用户提供原生应用外壳。