将项目从统一4移动到统一5 - "名称someVar在当前上下文中不存在"

时间:2016-02-26 06:40:52

标签: unity3d unityscript unity5

所以我试图将我的项目从团结4.6转移到团结5.3

我收到此错误(由4行中的// ERROR标记),脚本中的某些变量在当前上下文中不存在。

#if ENABLE_4_6_FEATURES
using UnityEngine.EventSystems;
#endif

public class MobilePaint : MonoBehaviour {
...
#if ENABLE_4_6_FEATURES
    public GameObject userInterface;
    public bool hideUIWhilePainting=true;
    private bool isUIVisible=true;
#endif


...
public void HideUI()
{
    if (!useNewUI) return;
    isUIVisible=false;//ERROR
    userInterface.SetActive(isUIVisible);//ERROR
}

public void ShowUI()
{
    if (!useNewUI) return;
    isUIVisible=true;//ERROR
    userInterface.SetActive(isUIVisible);//ERROR
}

该错误适用于' isUIVisible'和' userInterface'。

有人在团结中遇到过这个问题并告诉我如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

使用的预处理程序指令#if ENABLE_4_6_FEATURES在这里可能是错误的,因此不会定义这些变量。尝试注释掉预处理器。

 //#if ENABLE_4_6_FEATURES
    public GameObject userInterface;
    public bool hideUIWhilePainting=true;
    private bool isUIVisible=true;
//#endif