在最新的版本中,已经停用了IVirtuaButtonEventHandler ,并且ReisterEventHandler(this) 使用方法发生了改变。
(1)修改后主要取消了继承IVirtuaButtonEventHandler类
(2)修改ReisterEventHandler(this) 方法
代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia;
public class VirtrulButton : MonoBehaviour
{
public Animator ani;
VirtualButtonBehaviour[] vbs;
void Start()
{
vbs = this.GetComponentsInChildren<VirtualButtonBehaviour>();
for(int i = 0; i < vbs.Length; i++)
{
vbs[i].RegisterOnButtonPressed(OnButtonPressed);
vbs[i].RegisterOnButtonReleased(OnButtonReleased);
}
}
public void OnButtonPressed(VirtualButtonBehaviour vb)//摁下按钮的方法
{
switch (vb.VirtualButtonName)
{
case "Open":
ani.SetBool("isOpen", true);
break;
case "Light":
ani.SetBool("islight", true);
break;
}
}
public void OnButtonReleased(VirtualButtonBehaviour vb)//取消摁下按钮的方法
{
switch (vb.VirtualButtonName)
{
case "Open":
ani.SetBool("isOpen", false);
break;
case "Light":
ani.SetBool("islight", false);
break;
}
}
}
(3)将此代码赋予ImageTarget,随后添加虚拟按钮即可。
注意:虚拟按钮只能修改大小,不能旋转。