Flash Image once

I need to get an image in my game to quickly flash on the screen. I’ve done this so far:

 IEnumerator BlinkNukeIcon(float delayInSecs) {
     nukeIcon.color = Color.white;
     yield return new WaitForSeconds(delayInSecs);
     nukeIcon.color = Color.clear;
 }

but when I StartCorountine it then the image just appears and never disappears again.

Maybe this helps?

    private Renderer nukeIcon;
	public bool bom;

	void Start ()
	{
		nukeIcon = GetComponent<Renderer>();
	}

	void Update ()
	{
		if (bom) 
		{
			StartCoroutine(BlinkNukeIcon(2.0f));
 		}
	}

	IEnumerator BlinkNukeIcon(float delayInSecs) 
	{
      nukeIcon.enabled = true;
      yield return new WaitForSeconds(delayInSecs);
	  nukeIcon.enabled = false;
	  bom = false;
    }

Make sure to set your sprite to false as default.