Load texture from multiple sprite

Hi!

I have a multiple sprite.

22432-sprite.png

I’m trying to load each sprite separately via script.

void OnLevelWasLoaded(int level)
{
	Sprite[] sprites = Resources.LoadAll<Sprite>(@"Graphics/levelsSelection");
	double step = 1.0 / sprites.Length;
	double offset = step;
	foreach(var sprite in sprites)
	{
		var button = new GameObject("Button");
		button.AddComponent(typeof(GUITexture));
		button.transform.position = new Vector3(0.5f, (float)offset);
		button.guiTexture.texture = sprite.texture;
		offset += step;
	}
}

But that’s what I got as a result.

22433-result.png

What I do wrong? Why sprites turned out not separated? How to fix it?

Thanks to any one who can help me!

P.S. Please sorry for possible mistakes - english is not my native language.

OK. I solved this problem.
The hint - how to fix it - I found here:

In my situation the correct code is:

void OnLevelWasLoaded(int level)
{
    Sprite[] sprites = Resources.LoadAll<Sprite>(@"Graphics/levelsSelection");
    double step = 1.0 / sprites.Length;
    double offset = step;
    foreach(var sprite in sprites)
    {
       var button = new GameObject("Button");
       button.AddComponent(typeof(SpriteRenderer));
       button.transform.position = new Vector3(0.5f, (float)offset);
       var renderer = button.GetComponent<SpriteRenderer>();
       renderer.sprite = sprite;
       offset += step;
    }
}