Buttons in UI not interactable

The buttons I placed on Canvas are not interactable. I have the interactable bool set to true, the Canvas is on sort order is 0 with nothing over it in the main menu but there seems to be no event registering when i hover or click on the buttons.

Anyone else having this issue?

Hi jackxc,

Is there an EventSystem in your Hierarchy? If not, add one.


See also:

Yep, theres an EventSystem in my hierarchy. The buttons are not displaying different color on hover and selected so thats why I was assuming its the event not registering rather than something wrong with the LevelManager script

Are the buttons connected with a method in your code? If so, add a Debug.Log to that method. Then run your game and click the buttons to see whether the messages appear in the console. If they do, there is probably something wrong with the code. If they don’t, the problem might be somewhere else.

I tried a debug.log on LoadGame() method and message doesnt appear in the console. I also check if the buttons are a Raycast target and they are. I tried adding a completely neutral button with no edits, only adding the onclick event to LoadGame() and it doesnt register on a completely fresh button either

You assigned a game object or a prefab to the OnClick field, not the script, didn’t you?

Yep, I assigned the LevelManager gameobject and chose the LevelManager script attached to that gameobject. Buttons are not even entering their clicked state (changing color) so I think it just might not be registering the click or hover. I also tried deleting and readding the EventSystem but that didnt not work either…

Could you please share screenshots of what you did and see in Unity? For instance, I’m interested in your Button components.

The Buttons are attached to game objects which are children (or grand children) of a Canvas, aren’t they? Do you happen to use a CanvasGroup component somewhere? In the CanvasGroup component, one can disable the raycast for the child elements as well.


Sure things, I’ve attached screenshots of how I set up my buttons. They are attached to another ui object in the canvas with a vertical layout group. I’ve also attached the settings I have for the button.

I don’t think i’m using a CanvasGroup anywhere, is it put in by default somewhere when a Canvas is added?

Thank you. I’m wondering why your buttons did not log a message into your console. Did you add a Debug.Log to the LoadGame method?

Given the message did appear, the problem might be the “color”. The “colors” are not solid colors but tints. Since you use the same hue, it is difficult to tell whether the highlighting works.

For the “Highlighted Color” and the “Pressed Color” and set the alpha channel values to 1. Select another color so you would definitely be able to see a different.

Select the Canvas game object and make sure the “Receive Events” option is enabled in the Canvas component. Also check if there is a Graphic Raycaster component attached to the same game object.

Then test your game again.

Which version of Unity do you use?


For testing purposes, you could disable the current Canvas game object. Then create a new Canvas at the top level of the Hierarchy. Create a button and test if the button changes its colour when you are hovering over it. Sometimes, Unity components are buggy for no apparent reason. In that case, removing them and readding them might fix the issue.

1 Like

It seems that not replacing the InputModule in the EventSystem solves the input problem. I removed the InputSystemUInputModule and readded the Standalone Input Module component which seemed fix the button clicking events not registering problem. I’m not 100% sure this is a good solution though, is there anything that could go wrong by not using the updated input module in EventSystem?

If you are in doubt whether an action might break your project, make a backup of your project folder by duplicating it. Save the duplicated folder somewhere else, maybe on an USB stick. To save some free space, you could delete the Library and Temp folders in the backup folder.

Then you could try to click the button to see what happens.

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.

Privacy & Terms