- Home /
GUI: Button: C#: Use method which has a parameter that does not derive from MonoBehaviour
So after a little bit of research on why my button wasn't detecting the method from my script I believe it's because the parameter is custom and doesn't derive from monobehaviour and I was wondering is there a way around this? (other than changing my method which I'd prefer not to do :))
the current method:
void UpdateInventoryType (Item.ItemType sortingType){method stuff here}
ItemType is an enum variable in the class "Item"
I'm pretty new to coding so any help would be appreciated, and if I'm doing something catastrophically dumb apologies in advance!
What version of GUI button are you using? the Canvas style introduced in 4.6 or the old OnGUI() type?
I've realized that on the 4.6 gui system, I wasn't able to call methods with other typed parameters but primitive. Not sure if this has been changed. However, it does not seems to overwhel$$anonymous$$g to change your method to receive an int and then cast your int variable within your method to your enum type, that's something that C# can do out of the box. Also, have you tried with your method set to public?
public void UpdateInventoryType (int itemType) {
Item.ItemType myItemType = (Item.ItemType)itempType;
//method stuff here
}
Sorry I've been away! yes it was a public method :) I had changed the method to receive an int as my temporary solution but since I use the method in other areas it'd have been nice to keep the other parameter but it seems that the unity UI 4.6 system can't read that so I suppose the int parameter will have to become the permanent solution, thanks for the answers nonetheless :)
Your answer
Follow this Question
Related Questions
Generating tooltips for multiple buttons. 1 Answer
How Do You Use GUIText to Move Through Multiple Texts? 1 Answer
Problem with multi-touch on android game 1 Answer
Help with C# coding a loaded button (3.x Game Development Essentials) 1 Answer
How to trigger button press on a button in an editor window by pressing the return key ? 0 Answers