for(int i = 0; i<= 10; i++)
{
GameObject row = NGUITools.AddChild(Grid, prefabRow);
row.GetComponent<UISprite>().leftAnchor.target = ScrollView.transform;
row.GetComponent<UISprite>().leftAnchor.absolute = 0;
row.GetComponent<UISprite>().rightAnchor.target = ScrollView.transform;
row.GetComponent<UISprite>().rightAnchor.absolute = 0;
row.GetComponent<UISprite>().ResetAnchors(); /////////////The line that was missing to work correctly
}
Grid.getComponent<UIGrid>().Reposition();
ScrollView.ResetPosition();