Unity UI Button not calling the Onclick method - user-interface

I have a button under a canvas that is suppose to restart the scene. But instead its not calling the intended function of attached script.
On Unity Forums, I found solutions like it should be at higher hierarchy in canvas, and the canvas should have a graphic raycast and so-on.
But it still isn't working, although its on click array detects the intended method it is suppose to call.
Scene Editor with Canvas Selected:
Scene Editor with Button Selected:

Remove the canvas component from your button.
Make sure that there is a GraphicRaycaster on your canvas, and that there is an EventSystem object somewhere in the hierarchy.
(Both should have been added when you first added the canvas, but things get lost)

The screenshot that shows your button being selected, also shows, that you did pick a gameobject for the OnClick event, but you didn't pick a function from the drop down right next to that field, it says no function.

Instead of selecting the C# class, select the GameObject that
btnSceneSelect is attached to.
If btnSceneSelect is not attached to a GameObject, attach it to one
(other than the button).
Taken from this site

Related

Selection box is dragged, but not the object

I'm using FabricJS for some project, and my goal now is to save the new coordinates when the user drag an object. My issue is that when I select an object and move it, the selection box moves but not the object.
Image there:
I have some code which deal with object selection and mouse click and move events, so I tried to remove them but the issue persists.
Edit: looks like it's only a graphical issue, because the object:moved event is well triggered.
Edit 2 : after some progress in the development, this bug has mutated: now the object and the selection box move together, but I have to click two times on the object to make the selection box appear (while the selection events are triggered on the first click).

Issue with animating ui elements in unity 3d

I've added an animation clip to a canvas which animates position and alpha channel of its children (like buttons etc.). Now I'm gonna play this animation via pressing the play button (one of itself's children) as shown as here:
(Click om images to see in full screen)
I created a trigger in mecanim and sat as the trigger of transiting to that animation but it didn't work. Is there any ways else or was my job correct and did I some mistakes?
Please help, thanks
In the animator window just making the trigger doesn't do anything. You need to set the trigger by getting a reference to the animator and calling SetTrigger("yourTriggerName"). You can call this in the inspector using the UI button's OnClick() method.
Go to the inspector for the play button and scroll down to where you see this:
click the plus sign and then drag the game object with the animator you want to trigger onto the field that says None(Empty) then select the animator from the drop down menu that appears and select the SetTrigger function. Then type in the name of your trigger Exactly. Upper case matters. That's it. It should look something like this when you are done:
Obviously, you will have to use the correct GameObject and trigger name so yours will look a little different.

How can I edit an animation in Unity3D

I have selected a game object in the Hierarchy with an animation component attached (not an animator but a simple animation) then I tried to open the animation window to edit it by choosing "Animation" from the "Window" menu. The problem is that the animation window is grayed out and it suggests that I create a new animation. But I just want to edit the one that I already have.
To edit the animation, you need to select a GameObject, make sure it has an Animation component in the inspector or add it if not, assign the animation in question to the Animation list of that component, then open the animation window and select your animation. it's under the time control buttons, beside the object popup.
Source: http://answers.unity3d.com/questions/205198/edit-animation-in-animation-windows.html
I have just found out why it didn't work. Because the animation component provides a list of animations, and the first element of the list should not be empty. Meanwhile in my case the first element of the list was empty and the animation I wanted to edit was assigned to the second element of the list. That's why it didn't work.
The "Animations" tab under the "Animation" component must have 1 animation under it, including blanks. To fix this, change the "size" to 0, and the animator at the bottom will open.

Updating canvas without hovering

I'm making something like MS Paint using jCanvas library. I've put a button OUTSIDE the canvas. The button rotates the selected layer clockwise but I can't see any change unless I hover the canvas with mouse. I want the layer to be rotated by the time I press the button.
I tried using restoreCanvas() function but it didnt't work. How can I make a canvas automatically refreshed when a button out of it is pressed?
Sorry for bad English.
Solved. This function refreshes the canvas: $('canvas').drawLayers();

How to make a button appear pressed in libGDX?

So I have an ImageButton that has a texture for when it's not clicked and another one for when it is.
I'd like to make it so that under certain circumstances it becomes disabled also appear as if it's clicked (displaying its "clicked" texture).
So far button.setDisabled(true) has worked wonders but it doesn't make the button appear clicked. I searched through the whole Scene2d ImageButton doc and couldn't find a single method that could do that for me. Any ideas how can I achieve it?
Try using ImageButtonStyle to set the drawables for the various states of the button. It also includes a drawable for the disabled state, which you can set to be the same drawable that you used for the checked state.
http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/scenes/scene2d/ui/ImageButton.ImageButtonStyle.html

Resources