C# 获取错误:无法将类型“UnityEngine.Touch”隐式转换为“bool”
每当我运行此代码时,都会出现此错误: 错误CS0029:无法将UnityEngine.Touch类型隐式转换为 布尔 这里的问题是什么?当一个手指碰到屏幕时,我正试图向上移动一个游戏对象C# 获取错误:无法将类型“UnityEngine.Touch”隐式转换为“bool”,c#,unity3d,C#,Unity3d,每当我运行此代码时,都会出现此错误: 错误CS0029:无法将UnityEngine.Touch类型隐式转换为 布尔 这里的问题是什么?当一个手指碰到屏幕时,我正试图向上移动一个游戏对象 private Rigidbody rb; void Start() { rb = GetComponent<Rigidbody>(); } void Update () { if(Input.GetTouch()) { transform.positi
private Rigidbody rb;
void Start() {
rb = GetComponent<Rigidbody>();
}
void Update () {
if(Input.GetTouch()) {
transform.position += Vector3.up;
}
}
}
Input.GetTouch返回什么
返回表示特定触摸状态的对象
你在这里干什么
if(Input.GetTouch())
您使用的不是布尔表达式或布尔变量,而是对象!这是无法编译的。在if语句中,必须使用条件或布尔变量
我们如何识别用户是否进行了任何触摸
Input.GetTouch返回什么
返回表示特定触摸状态的对象
你在这里干什么
if(Input.GetTouch())
您使用的不是布尔表达式或布尔变量,而是对象!这是无法编译的。在if语句中,必须使用条件或布尔变量
我们如何识别用户是否进行了任何触摸
因为这种情况:
if(Input.GetTouch())
不返回布尔类型。它回来了。要检查您是否触摸过,您应该这样使用它:
void Update ()
{
if(Input.touchCount > 0) {
transform.position += Vector3.up;
}
}
如果您想了解有关触摸检测的更多信息,请查看unity手册。,因为这种情况:
if(Input.GetTouch())
不返回布尔类型。它回来了。要检查您是否触摸过,您应该这样使用它:
void Update ()
{
if(Input.touchCount > 0) {
transform.position += Vector3.up;
}
}
如果您想了解更多关于触摸检测的信息,请查看unity手册。根据API,公共静态触摸GetTouchint索引;返回触摸,而不是布尔。根据API,公共静态触摸GetTouchint索引;返回触摸,而不是布尔