- Home /
OnMouseUp interfering with NGUI OnClick Button
I have a grid of nodes, each node has a script with OnMouseUp to change it's appearance.
My NGUI buttons work fine, except when the button is over top one of the nodes.
Then the button will press down but when I release the button it will go with the OnMouseUp script and ignore the button causing it not to be pressed. Any ideas why this would be happening? Should the button not block the ray from hitting the node?
Answer by whydoidoit · Mar 21, 2013 at 08:29 AM
Unfortunately not. The Ray for OnMouseUp/Down is sent by the system and isn't the same one NGUI is using.
I'm afraid you need a check in the OnMouseUp function to see if your menu is visible and perhaps ignore all clicks - of if that won't work then you will need more complex code to fire your own ray (using the UICamera that is displaying NGUI) to check if a button's been hit.
There is one other possible workaround if you need clicks while the menu is visible - NGUI passes any OnPress and OnClick which misses all of the UI to a specified GameObject (using UICamera.fallThrough) - you could also set a bool there that you reset in LateUpdate to indicate that the click should be handled even though the menu is visible.
You should also check out the Tasharen forum and ask questions there.
Your answer
Follow this Question
Related Questions
Best way to load a level depending on which game object is clicked 1 Answer
NGUI Button Click Callback from external script. 2 Answers
[Solved] Button OnClick properties are missing after loading the scene 4 Answers
Why won't my function show up in the onClick area of a button? 2 Answers
Button doesn't work when returning to scene (android) 1 Answer