我正在尝试获取一个可以显示为可以使用的“现金”的int值,并且您可以通过按下按钮来获取现金,但是当我在“ public void”中的“ int”值中添加一些内容时对于那个按钮,它将不会与另一个按钮的另一个“ public void”中的int值堆叠在一起,我是C#编码的新手,我不明白问题出在哪里,我也不知道从哪里开始修复未知的问题,所以我问你。 (这是我的第一篇文章,所以这样做时我可能做错了事)
我尝试了一些我不知道怎么说的不同方法,但是它们没有起作用。而且我还没有找到任何对我有帮助的东西,或者关于这个问题的任何东西(也许我只是盲目的)
using UnityEngine;
using UnityEngine.UI;
public class Cash : MonoBehaviour
{
private int result;
public void Button1()
{
result = result + 1;
scoreText.text = "Cash: " + result.ToString();
}
public void Button2()
{
result = result + 5;
scoreText.text = "Cash: " + result.ToString();
}
}
(这不是整个脚本) 我期望将两个“ int”值加起来,如果我按按钮1会说“ 1”,然后当我按按钮2时会说“ 6”,但是它说“ 5”,当我按第一个按钮再次显示“ 2”
[有效解决方案:更改“私有int结果;”为“静态int结果”; (由Svarr穿)]
答案 0 :(得分:0)
这个问题由Svarr解决,他发表了评论 “如果(如我所相信)@stuartd和@ PeterA.Schneider是正确的,则可以通过将结果静态化来解决问题。请记住,这更多的是hack,而不是解决方案-即使无法创建更多的解决方案多于一个现金实例。”
这可行,所以我现在将此线程标记为已解决。 (我不明白@stuartd和@ PeterA.Schneider告诉我的内容(因为我很愚蠢),所以我现在只提他们。
所以我所做的就是我更改了“私有int结果”;为“静态int结果”;我的问题解决了