C# 只要按下inspector中的按钮,unity就会运行一个功能
我是Unity的新手 使用Unity Inspector,我设置了一个按钮,用于回调函数(OnClick),它工作正常,但只有一次,要再次启动操作,我需要释放并再次单击该按钮 我怎样才能确保只要按下按钮,该功能就会反复运行?(像机关枪一样)C# 只要按下inspector中的按钮,unity就会运行一个功能,c#,function,unity3d,uibutton,C#,Function,Unity3d,Uibutton,我是Unity的新手 使用Unity Inspector,我设置了一个按钮,用于回调函数(OnClick),它工作正常,但只有一次,要再次启动操作,我需要释放并再次单击该按钮 我怎样才能确保只要按下按钮,该功能就会反复运行?(像机关枪一样) 问候 单击OnClick无法执行此操作。使用OnPointerDown和OnPointerUp。在这些函数中将布尔变量分别设置为true/false,然后在Update函数中检查该布尔变量 附加到UI按钮对象: public class UIPresser
问候 单击
OnClick
无法执行此操作。使用OnPointerDown
和OnPointerUp
。在这些函数中将布尔变量分别设置为true/false,然后在Update
函数中检查该布尔变量
附加到UI按钮对象:
public class UIPresser : MonoBehaviour, IPointerDownHandler,
IPointerUpHandler
{
bool pressed = false;
public void OnPointerDown(PointerEventData eventData)
{
pressed = true;
}
public void OnPointerUp(PointerEventData eventData)
{
pressed = false;
}
void Update()
{
if (pressed)
MoveLeft();
}
public void MoveLeft()
{
transform.RotateAround(Camera.main.transform.position, Vector3.up, -rotation / 4 * Time.deltaTime);
infopanel.RotateAround(Camera.main.transform.position, Vector3.up, -rotation / 4 * Time.deltaTime);
}
}
您可以找到其他事件函数。单击
OnClick
无法执行此操作。使用OnPointerDown
和OnPointerUp
。在这些函数中将布尔变量分别设置为true/false,然后在Update
函数中检查该布尔变量
附加到UI按钮对象:
public class UIPresser : MonoBehaviour, IPointerDownHandler,
IPointerUpHandler
{
bool pressed = false;
public void OnPointerDown(PointerEventData eventData)
{
pressed = true;
}
public void OnPointerUp(PointerEventData eventData)
{
pressed = false;
}
void Update()
{
if (pressed)
MoveLeft();
}
public void MoveLeft()
{
transform.RotateAround(Camera.main.transform.position, Vector3.up, -rotation / 4 * Time.deltaTime);
infopanel.RotateAround(Camera.main.transform.position, Vector3.up, -rotation / 4 * Time.deltaTime);
}
}
您可以找到其他事件函数。我的答案解决了您的问题吗?我的答案解决了您的问题吗?