0
我正在用用户输入和按钮编写UI界面。我需要让用户输入一些号码,然后按下标有“解决”的按钮,这需要确定号码是否正确。我尝试在开始时只使用一个按钮来解决它。这里是我的代码:在同一位置是否加载多个按钮
if (correct)
{
solveButton = new MenuButton(contentManager.Load<Texture2D>("solve"),
buttonCenter, GameState.AnswerNo);
}
else
{
solveButton = new MenuButton(contentManager.Load<Texture2D>("solve"),
buttonCenter, GameState.AnswerYes);
}
当加载它,draw方法下,我使用下面的代码:
solveButton.Draw(spriteBatch);
这里,GameState.AnswerNo
和GameState.AnswerYes
导致不同的页面站在正确的和不正确的答案, 分别。然而,它并不像我想的那样工作 - 无论“正确”值是多少,它总是会进入GameState.AnswerNo
页面。
所以,我想用两个按钮(按钮数字是相同的,但移动位置一点点):
solveButton = new MenuButton(contentManager.Load<Texture2D>("solve"),
buttonCenter, GameState.AnswerNo);
buttonCenter.Y -= 40;
solveButton2 = new MenuButton(contentManager.Load<Texture2D>("solve"),
buttonCenter, GameState.AnswerYes);
并加载它们时:
if (correct)
{
solveButton.Draw(spriteBatch);
}
if (!correct)
{
solveButton2.Draw(spriteBatch);
}
,工作正常,但尴尬的是,当用户输入正确的号码时,button1
将消失,并且button2
将出现在其正下方。任何更好的想法来完成这个功能?
为什么不给这两个按钮相同的位置? – 2014-10-28 15:07:48
感谢您的回复。不管输入如何,在相同位置使用这两个按钮只会返回一个答案。 – 2014-10-28 15:12:05
这听起来像您可能正在查看代码的错误部分。这听起来像你的solveButton没有被正确地重新分配/重绘,但很难确切地知道给出的代码。 – 2014-10-28 15:55:59