我有三个按钮,当你点击一个按钮,用文本面板出现。
问题是,当我重视剧本,没有任何反应。 “点击”已注册但从未出现在面板上。
我的脚本连接到每个按钮的,是这样的:
public GameObject panel; //i use to put the panel in unity
bool selected = false;
void Start () {
panel.SetActive(false);
}
void OnSelect() {
selected = !selected;
panel.SetActive(true);
}
我大概有做别的事情与面板,但我无法弄清楚。
像这样做:
(1)在画布添加到您的项目
(2)大尖-一定要与屏幕尺寸的选择比例 。
那是你曾经使用的唯一一个。 团结无意中设定了错误的默认那里,他们没有固定的呢。
(3)在你的画布,添加一个按钮让用户可以或许说“测试”
(3)在你的画布,添加一个按钮让用户可以或许说“另一个测试”
(4)使脚本这样的事情...
public class MainScreen:MonoBehaviour
{
public void UserClickedTest()
{
Debug.Log("test..");
}
public void UserClickedAnotherTest()
{
Debug.Log("another test..");
}
}
(5)把该脚本的一个副本任何你喜欢的对象。 你可以把它放在你的相机上,在画布上,或其他任何地方是有道理的
现在让我们假设你把它放在你的相机对象,例如。
(6)单击按钮“测试” .....
而做到这一点?
点击的OnClick下的加号按钮
你看,上面写着“_main”在这个例子中插槽。 从层次结构拖动CAMERA项目,该槽
使用下拉菜单:
选择 “UserClickedTest()” 函数...
不错吧?
现在对于其他按键,做相同的,但选择“UserClickedAnotherTest()”函数。
你完成了! 运行并测试!
你不能使用OnSelect
,除非你使用的系统ISelectHandler
和更多的东西:它是困难的初学者。 我强烈建议OP大师简单的技术我在这里解释一下。 请享用!
也许你连接的脚本到面板上。 如果是这样,你的脚本不能只要你的游戏对象是SETACTIVE(假)执行。
我希望我能够帮助你。