• Hi Guest!

    We are extremely excited to announce the release of our first Beta for VaM2, the next generation of Virt-A-Mate which is currently in development.
    To participate in the Beta, a subscription to the Entertainer or Creator Tier is required. Once subscribed, download instructions can be found here.

    Click here for information and guides regarding the VaM2 beta. Join our Discord server for more announcements and community discussion about VaM2.

Coding question: pressing UI button, connected to a Parent atom, from code

bot1789

Member
Joined
May 1, 2023
Messages
49
Reactions
81
Hello everyone!
I want to add a On click-Listener to an UIbutton from my script using the following code:

C#:
Atom uiButtonAtom = SuperController.singleton.GetAtomByUid(uiButtonName);
Transform buttonTransform = uiButtonAtom.transform.Find("reParentObject/object/rescaleObject/Canvas/Button");
UnityEngine.UI.Button myButton_1 = buttonTransform.GetComponent<UnityEngine.UI.Button>();
myButton_1.onClick.AddListener(ClickUIButton);

This works fine if the UI button atom has no parent, but fails if another atom is declared as its parent.
I would like to ask if there is a way to do the same if the UI button has a parent atom?
 
A bit late, but instead of uiButtonAtom.transform.Find("reParentObject/... use uiButtonAtom.reParentObject.Find("...
 
A bit late, but instead of uiButtonAtom.transform.Find("reParentObject/... use uiButtonAtom.reParentObject.Find("...
It's not too late! Thank you for the tip!
It really works if I do like this:
C#:
Transform buttonTransform = uiButtonAtom.reParentObject.Find("object/rescaleObject/Canvas/Button");
 
Yeah. Parenting an atom changes the "reParentObject" transform's location in the scene hierarchy, but that doesn't matter when you use the direct reference to that transform :)
 
Back
Top Bottom