Так вот мой код:C# XNA - Перебор элементов и рисунок их
// Variables
private SpriteFont font;
private Vector2 fontPos, fontOrigin;
private List<string> menuItems;
// LoadContent()
font = Content.Load<SpriteFont>("myFont");
fontPos = new Vector2(1920/2, 1080/2);
menuItems = new List<string>();
menuItems.Add("Single Player");
menuItems.Add("Multi Player");
menuItems.Add("Achievements");
menuItems.Add("Options");
menuItems.Add("Quit Game");
// Draw()
for (int i = 0; i < menuItems.Count; i++)
{
Vector2 fontOrigin = Game.gameFontLarge.MeasureString(menuItems[i])/2;
spriteBatch.DrawString(Game.gameFontLarge, menuItems[i], new Vector2(ScreenManager.Instance.Dimensions.X/2, ScreenManager.Instance.Dimensions.Y/2), Game.NoTint, 0.0f, fontOrigin, 1.0f, SpriteEffects.None, 0.0f);
}
До сих пор этот код рисует все, но все тексты рисуются друг над другом на одних и тех же координатах, центр экрана , Как сделать каждую из строк в списке ниже предыдущей, например 24
пикселей ниже предшественника?
Спасибо! Он работает без кавычки 'i' для плавания. Поскольку я тестировал, 'Vector2.Y' и' Vector2.X' являются 'float', но мне не нужно было отличать' 2' в разделе, потому что floats можно разделить/умножить на целые числа (возможно, не во всех случаях, но этот точный случай не нуждается в литье). – jacksparrow