SetActive doesn't work.

The other consideration is, do you even need a pooler or are you just doing it for fun? I’ve never bothered with them personally, and I do a lot of mobile stuff too.

Here’s my standard warning about optimizing for fun:

DO NOT OPTIMIZE CODE JUST BECAUSE… If you don’t have a problem, DO NOT OPTIMIZE!

If you DO have a problem, always start by using the profiler:

Window → Analysis → Profiler

Failure to use the profiler means you’re just guessing, making a mess of your code for no good reason.

Notes on optimizing UnityEngine.UI setups: