套件概覽
pointer_interceptor 套件提供了一個 widget,確保指標事件(例如點擊)不會被 Web 上的底層 HtmlElementViews 吸收。它允許 Flutter widget 在覆蓋 Web 特定元件(如 iframes 或嵌入的 HTML 內容)時仍能接收輸入事件。這對於在混合 Web 應用中維持互動功能特別有用,因為原生 HTML 元素可能會擷取手勢。此套件專為與 Flutter 的 Web 平台無縫整合而設計,並支援 iOS 與 Web 平台。
適用情境
- 處理 iframe 上的觸控事件
- 確保按鈕互動在嵌入的網頁內容上正常運作
- 防止基於 Web 的混合應用程式中的手勢遺失
- 改進網頁疊加層的可用性
- 在 HTML 視圖上方啟用可點擊的 UI 元素
主要特色
- 防止 HtmlElementViews 導致事件被吞沒
- 用於事件攔截的簡單組件包裝器
- 跨平台支援 Web 與 iOS
- 最小設定需求
- 維持 Flutter 手勢系統的完整性
適合對象
- 使用嵌入式 HTML 開發 Web 應用的開發人員
- 在Flutter Web專案中使用iframe的團隊
- 網頁上需要精確指針控制的應用程式
- 具有分層互動元件的 UI
- 在網頁上需要可靠手勢處理的項目
使用建議
- 僅限網頁和iOS平台
- 可能需要小心地疊加小部件
- 在非HTML疊加場景中不需要
- 性能影響微乎其微但確實存在
- 在與外部網頁內容互動時最佳使用
