如何從uiview發送觸摸事件到uiwebview而不使用未記錄的方法?從uiview向uiwebview發送觸摸事件
我的問題是當用戶觸摸uiwebview時隱藏/顯示tabbar和導航欄。這實際上需要uiwebview的定製,這是不建議。我打算在uiwebview上放置一個透明視圖,然後從那裏接收觸摸事件,使用它們,然後將它發送到uiwebview。爲此,我想知道如何將觸發事件從視圖發送到webview。
如何從uiview發送觸摸事件到uiwebview而不使用未記錄的方法?從uiview向uiwebview發送觸摸事件
我的問題是當用戶觸摸uiwebview時隱藏/顯示tabbar和導航欄。這實際上需要uiwebview的定製,這是不建議。我打算在uiwebview上放置一個透明視圖,然後從那裏接收觸摸事件,使用它們,然後將它發送到uiwebview。爲此,我想知道如何將觸發事件從視圖發送到webview。
這是完全可能的。您需要繼承包含UIWebView或UIWindow的UIView,然後中繼觸摸事件。請參閱this post。
這似乎是不可能的。您可以使用自定義疊加層捕獲觸摸事件,但無法調用您自己的事件,也無法更改現有對象的目標視圖。
換句話說:只要手指碰到屏幕,創建的觸摸事件就包含目標。之後,它被刻在石頭上,webview將永遠不會迴應。 (有人請證明我錯了!)
然後退而求其次 - 我不建議 - 是確定的頁面被滾動,等待
[[browser stringByEvaluatingJavaScriptFromString:@"scrollY+scrollX"] intValue];
成爲非零,在循環。 Javascript評估似乎有點慢;至少你不能每秒鐘做10次。