Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当我试图从用户那里获得答案输入时,没有得到任何结果_C#_Unity3d - Fatal编程技术网

C# 当我试图从用户那里获得答案输入时,没有得到任何结果

C# 当我试图从用户那里获得答案输入时,没有得到任何结果,c#,unity3d,C#,Unity3d,我正在尝试创建一个简单的问答游戏,下面是我的源代码。我无法获取该问题的用户输入。所以我在场景中添加了home和back按钮。现在这也不起作用了。请看一看 public类Level2UI:monobhavior{ 私有列表sceneHistory=新列表(); [SerializeField]private Level2管理器gameManager; [SerializeField]私有文本Mesh Prougui questionText; [SerializeField]私有列表选项; [Se

我正在尝试创建一个简单的问答游戏,下面是我的源代码。我无法获取该问题的用户输入。所以我在场景中添加了home和back按钮。现在这也不起作用了。请看一看

public类Level2UI:monobhavior{
私有列表sceneHistory=新列表();
[SerializeField]private Level2管理器gameManager;
[SerializeField]私有文本Mesh Prougui questionText;
[SerializeField]私有列表<按钮>选项;
[SerializeField]专用颜色CorrColor,
颜色不对,
正常颜色;
私人问题;
二等兵布尔回答;
//在第一帧更新之前调用Start
void setButton(){
for(int i=0;ianswerList=shufflist.shufflistitems(question.options);
for(int i=0;i().text=answerList[i];
Debug.Log(“检查”);
选项[i].name=answerList[i];
选项[i].image.color=NormalColor;
}
回答=错误;
设置按钮();
}
公共无效点击回答(按钮btn){
打印(“txt”);
如果(!回答){
回答=正确;
bool val=gameManager.Answer(btn.name);
if(val){
btn.image.color=CorrColor;
Debug.Log(“test1”);
}
否则{
btn.image.color=错误颜色;
调试日志(“测试”);
}
}
}
公共void加载场景(字符串newScene){
sceneHistory.Add(newScene);
场景管理器。加载场景(新闻场景);
}
公共场所{
bool returnValue=false;
如果(sceneHistory.Count>=2){
returnValue=true;
sceneHistory.RemoveAt(sceneHistory.Count-1);
}
}
}

您分配了按钮吗?您需要分配按钮或对其进行初始化。然后在代码中将侦听器放到它上面,或者在编辑器中将该方法直接附加到游戏对象本身

分配按钮

Button btn = transform.Find("btn").getComponent<Button>();
btn.onClick.AddListener(()=>{
// perform your action
});
Button btn=transform.Find(“btn”).getComponent();
btn.onClick.AddListener(()=>{
//执行你的行动
});

我希望我能帮点忙?如果没有,我很抱歉。

欢迎使用StackOverflow,请将代码添加为文本并使用{}按钮格式化,而不是添加图像。选项[I].GetComponent().onClick.AddListener(委托{ClickedAnswer(localBtn);});但是无法探测到触摸哦,好的,你检查过按钮的光线投射目标了吗?此外,如果按钮上方有textmesh,请检查光线投射目标。类似的事情发生在我身上之前它不起作用,因为我在画布上工作onClick.add listener()主要用于感谢您的帮助,实际上错误不在于脚本,事件系统丢失很高兴您发现了问题。