我想給webView添加手手勢,結(jié)果添加不上,網(wǎng)上提供了解決辦法:
1.cancelsTouchesInView=NO;
2.使用它的delegate
3.實(shí)現(xiàn)delegate
這個(gè)代理方法比較有意思躯保,如果沒有實(shí)現(xiàn)這個(gè)方法的話抖部,一個(gè) view只能添加一次同種手勢窖维,并且后面添加的手勢會(huì)覆蓋前面的手勢曙寡。那么疑問解決了
還是想搞清楚原理讼溺,就用runtime 探究它的屬性令宿,變量叼耙,方法,結(jié)果出現(xiàn)一大堆東西粒没,卻沒有絲毫幫助筛婉。我想知道webView包涵了那些手勢,既然webView有手勢癞松,那么我就遍歷出來爽撒,思路是先去的webView 上的所有view(包含webView),然后取webView的手勢响蓉,方法如下:
大家猜猜結(jié)果如何硕勿,結(jié)果是:objc[634]: Class WebView is implemented in both /System/Library/PrivateFrameworks/WebKitLegacy.framework/WebKitLegacy and /var/containers/Bundle/Application/44B0B0E6-C43E-470E-82D2-9F231F6C6F00/CustomWebView.app/CustomWebView. One of the two will be used. Which one is undefined.并且無法push到當(dāng)前的controller
這個(gè)方法宣布失敗枫甲;希望這點(diǎn)經(jīng)驗(yàn)對(duì)大家有幫助源武,如果有方法解決扼褪,請(qǐng)?zhí)狳c(diǎn),感激不盡粱栖。
其實(shí)還有一種實(shí)現(xiàn)方式迎捺,發(fā)給大家個(gè)思路,重寫手勢