1. 程式人生 > >使用cocos2dx做強制新手引導的觸控區域誤差的個人解決方案

使用cocos2dx做強制新手引導的觸控區域誤差的個人解決方案

前幾天有個朋友問我之前我的專案中新手引導是怎麼做成的觸控很準確,而之前開發這個功能時候我是突發奇想,不知有沒有人也是使用了這個思路。由於本人目前已經不接觸cocos開發,便只簡單敘述一下思路。

首先設計一個覆蓋層,新手引導的框框全部顯示在這一層上,也就是按鈕區域會有高亮效果,並且高亮處的觸控會直接穿透該層,從而觸發下面層的按鈕事件,使得引導得以進行,說到這裡,應該很容易理解,但是問題來了,由於穿透區域與按鈕的邊界縫隙問題,使得可能會出現bug,bug的體現一般為下面的按鈕響應了引導層事件沒有響應,引導層事件響應了,按鈕事件沒響應。出現這樣的情況一般是點到了高亮區域的邊界,很細微的地方,很難避免。然而c++的指標是一個很神奇的所在,解引用之後可以直接修改記憶體值,於是可以做這樣的邏輯,當觸控範圍在一定範圍內,可以強制將觸控點左邊強制設為按鈕的中心座標,如此就不會出現上述情況