UI Button not working

It seems strange, but I’ve rechecked this lots of times.

I have multiple buttons in my scene that are hidden and interactable is set to false until I change these two things by script. All buttons work fine except for one.
I’ve tried rebuilding the button from another one that was working and just changing graphics and OnClick(). Still, this button doesn’t work.

Both buttons are definitely called by the script, because the buttons show up right on time and the other button works. Also, I use sprite swap as button animation (should be visible if anything happens; other one is showing a change caused by hovering with the mouse).

What could I be missing?

Thanks a lot.

EDIT: I am using the most recent version of Unity on OS X (Unity 5.3.3), but the error occured before. It also happens in the built version.

In your scene you should find you have an ‘EventSystem’ object. Whilst playing the game, inspect this object and towards the bottom of the inspector you will see some debug information, which includes what the mouse is interacting with at any time. Hover over the problematic button and try clicking it. Is it actually trying to click something else (i.e. is some other component blocking the input?)

I know this doesn’t directly answer your question, but in case it helps others in the future.
In my case, I had the following structure setup in the Hierarchy: Canvas->Panel->Button and for some reason, the canvas gameobject was missing a Graphic Raycaster component. Therefore my button (and other UI children of the canvas) were un-clickable.