我和我的朋友已经被黑客攻击了几个小时,但我们无法弄清楚它有什么问题.它本质上是通过数组运行的,如果按钮应该被锁定或可交互,如果它是null,它将是可交互的.通过使用播放器prefs,这些设置应该在应用程序的每个会话中持续存在.
这是代码:
for (i = 0; i < buttons.Length; i = i + 1) {
if (PlayerPrefs.GetInt("button" + string.Format i) == null) {
PlayerPrefs.SetInt("button" + string.Format i, 1);
}
if (PlayerPrefs.GetInt("button" + string.Format i) == 1) {
button.interactable = true;
} else {
button.interactable = false;
}
}
Run Code Online (Sandbox Code Playgroud)
目前Unity统一显示5个错误:
只是一个猜测,但你应该写:
for (int i = 0; i < buttons.Length; ++i) {
Run Code Online (Sandbox Code Playgroud)
你可能忘了申报 i
这一行:
PlayerPrefs.GetInt("button" + string.Format i)
Run Code Online (Sandbox Code Playgroud)
string.Format是一个静态方法string.语法错误.你可以这样写:
PlayerPrefs.GetInt("button" + i)
Run Code Online (Sandbox Code Playgroud)
或者这样:
PlayerPrefs.GetInt(string.Format("button{0}",i));
Run Code Online (Sandbox Code Playgroud)