Scene activated in background?

I have a customized splash scene and in the scene I have a transition to the gameScene(kind of heavy with assets).
I use coroutine for the transition.my problems is while the splash screen showing,
if I touch the screen,game starts automatically after the transition finished(touch to start function works in the gamescene).looks like gamescene is activated while showing splash screen.

I’ve used onLevelWasLoaded and delegates in game scene to activate touch functions
after gamescene rendered but not working.and I used LoadLevelAsync too couldn’t figure out.
am I doing anything wrong? or do we have better solution to load heavy scenes?

A possibility to fix this situation is to use gamestates with the help of enum.

enum GameState
{
   Loading,
   Running,
   Pause 
}

then declare variable:

GameState gameState; // manages the game state locally throughout game in one(singleton/session) place.

and in Update():

void Update()
{
    if(gameState == GameState.Running)
    {
        // Here check for touches and allow to handle them.
    }
}

Set gameState to Loading from splash scene.