Main Menu not responding to touch on Android

Hi,
I’ve been following tutorials on how to make a dx ball type game for android but now I am running into a problem.
When I test the game on my android phone(HVGA Landscape)the menu screen comes and when I tap on the start button the game hangs for a while and then suddenly starts,strange though this does not happen while on pc.
Here is my menu script:-`#pragma strict

private var ray : Ray;
private var hit : RaycastHit;

function Update () {

if(Input.GetMouseButtonDown(0))
{
	ray = Camera.main.ScreenPointToRay(Input.mousePosition);
	if(Physics.Raycast(ray,hit)){
	if(hit.transform.name == "Start"){
	Application.LoadLevel("BrickBreakerSc1");
	}
	if(hit.transform.name == "Exit"){
	Application.Quit();
	}
	}
}

}`
this is the script which controls the menu

Changing scenes is apparently rather costly with Android builds… the PC has much more memory, so it can handle more…

The application is not really “hanging”, just loading, depending on what you have in your project this can take a while.

my advice is to combine the menu into the game scene, then just toggle things on or off rather than changing scenes at all… ENUMS are good for keeping track of a game state… so instead of:

 if(hit.transform.name == "Start"){
     Application.LoadLevel("BrickBreakerSc1");
 }

something like:

enum GameState {menu,gameplay};

 var currentGameState : GameState;

function Update () {
...etc
 if(hit.transform.name == "Start"){
    currentGameState = GameState.gameplay;
}

otherwise, you can expect some delay in scene changes… you may want to turn on a load screen if you decide to keep the separate scenes:

 if(hit.transform.name == "Start"){
    showLoadGUI = true;
    Application.LoadLevel("BrickBreakerSc1");
}    

and then:

function OnGUI(){
    if(showLoadGUI){
        GUI.DrawTexture(...etc);
       //some load screen code,change audio clip, etc...
    }
}