[問題] cocos2d跟UiView的衝突

看板MacDev作者 (聖誕青年)時間11年前 (2013/12/02 18:58), 編輯推噓0(0010)
留言10則, 2人參與, 最新討論串1/1
想問 如果用cocos2d在寫東西 又在畫面上叫出一個uiView來裝廣告 而我畫面是橫的...為何每次點到uiView的範圍, coco在 xy坐標相反的地方也會有所反映? 比方說 uiView的位置 以cocos來說 是20,50 , 但對uiView來說是50,20 而我在50,20這地方coco的按鈕就會被觸發 ... 請問何解? 有請高人指點...感恩 -- ˙ . . . . ‧ .◢◣. . . ◢█◣. ███ █◣█ ███ ███ ███ ██ █▉█ ██◣ ˙▆▇ █▇ γ██████▇█ ██▆▅ █▉█ █▇█▆▅▆▇ . █ █ξ ◥█ ι ﹎﹎﹎ ﹎﹎﹎ ███ █▇█ . -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.3.15.181

12/02 20:08, , 1F
之前好像遇過同樣的問題...
12/02 20:08, 1F

12/02 20:13, , 2F
CCMenu的itemForTouch方法 把CGPoint touchLocation那行改
12/02 20:13, 2F

12/02 20:14, , 3F
成CGPoint touchLocation = [touch locationInView:
12/02 20:14, 3F

12/02 20:14, , 4F
[CCDirector sharedDirector].view]; 試試看
12/02 20:14, 4F

12/02 20:16, , 5F
p.s.記憶久遠 錯了別打我XD
12/02 20:16, 5F
謝謝您,不過不好意思我沒有講清楚 這玩意他不是用item 其實是他用cctouches 然後去看點到的坐標有沒有跟sprite重疊 有的話就觸發點擊,而就是cctouches取出來的點出事了 - (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { UITouch *touch=[touches anyObject]; CGPoint locationOrig=[touch locationInView:[touch view]]; CGPoint location = [[CCDirector sharedDirector] convertToGL:locationOrig]; } 最後那行convert跟沒有一樣 我有想要把它改成CCMENU 但這是公司的舊專案要維護,之前寫的人不知道跑哪去了 這東西又寫得亂七八糟 還有真扭假按鈕的...然後一堆delegate 又沒有注解.. 所以看來應該是只能從抓點下手... 請問有高人能指點嗎O.Q ※ 編輯: santaclub 來自: 112.209.134.72 (12/02 21:43)

12/02 21:53, , 6F
試試把locationOrig換成我貼的那行看看? 他們的Code感覺是
12/02 21:53, 6F

12/02 21:53, , 7F
在做同樣一件事
12/02 21:53, 7F

12/02 22:06, , 8F
可是 [CCDirector sharedDirector] 沒有.view
12/02 22:06, 8F

12/02 22:13, , 9F
可是有openGLView,直接把你的拿來就可以動了
12/02 22:13, 9F

12/02 22:14, , 10F
不用再次轉換,太感謝您了!!!
12/02 22:14, 10F
文章代碼(AID): #1Id6Uxes (MacDev)
文章代碼(AID): #1Id6Uxes (MacDev)