我试着在网上四处寻找,但似乎在相对较新的Unity UI构建器中没有对键盘和按钮控制器输入的支持。据我所知,旧的按钮系统使用了事件系统,但我无法让它在UI生成器中工作。如果我真的想要这个功能,我需要在我的游戏中使用旧的按钮系统吗?有人有什么解决办法吗?
xzabzqsa1#
官方的Unity文档中有一个关于使用新UI工具包进行方向导航的指南,希望对您有所帮助!下面是代码片段:
A.RegisterCallback <NavigationMoveEvent>(e => { switch(e.direction) { case NavigationMoveEvent.Direction.Up: U.Focus(); break; case NavigationMoveEvent.Direction.Down: D.Focus(); break; case NavigationMoveEvent.Direction.Left: L.Focus(); break; case NavigationMoveEvent.Direction.Right: R.Focus(); break; } e.PreventDefault(); });
简而言之:1.注册按下导航键时引发的NavigationMoveEvent事件的回调。1.获取按下箭头键的方向。1.使用方向将焦点移动到适当的元素。1.使用PreventDefault方法可防止焦点移动到Tab键顺序中的下一个元素。
NavigationMoveEvent
PreventDefault
1条答案
按热度按时间xzabzqsa1#
官方的Unity文档中有一个关于使用新UI工具包进行方向导航的指南,希望对您有所帮助!
下面是代码片段:
简而言之:
1.注册按下导航键时引发的
NavigationMoveEvent
事件的回调。1.获取按下箭头键的方向。
1.使用方向将焦点移动到适当的元素。
1.使用
PreventDefault
方法可防止焦点移动到Tab键顺序中的下一个元素。