Unity怎么获取一个有参数的方法

Unity怎么获取一个有参数的方法,第1张

不太清楚实际情况,但是,

(1)你这样写的前提是,A 和 B 必须同时实例化到同一个gameObject上(这两个脚本得同时应用到一个物体上),否则你的a = GetComponent<A>()肯定为null ,因为B调用这个Get,而他本身所处的gameObject本没有A这个脚本组件,A的实例在另一个物体上。 估计这是你报错的一个原因。

(2)用static声明全局变量似乎没必要,static的作用应该是让变量在类被实例之前就得到实例化。用static的话,那么应该是要达到这样的目的,即用类名直接调用变量或函数(Mathf类里面的很多数学数值和函数都是这样的例子),你这个情况如果用了static那就最好应该为了这样的目的:

ARoadnodecount

(3)实时 *** 作数组,最好用List<>,具体可以参考msdn List的用法,

(4)如果你的目的只是为了让B能够通过代码访问A的变量,一般的public 变量就足够,其余你只需要解决B通过何种途径正确访问A。比如,你可以把A做成singleton:

static A instance;

在Ajs中用静态声明 static var 变量:bool;

然后在Bjs中直接用 B变量 调用;

或者用 GameObjectFind("gameobject名字")GetComponent(A)变量 调用;

"另一个脚本的变量"

Class Class_A{

public A;

}

Class Class_B{

Class_B class_b;

class_bA=null;

}

using UnityEngineUI;

string textValue = gameObjectGetCompenenet<InputField>()text;

建一个脚本 复制上面的代码 把脚本放在InputField对象上 textValue 里就是输入文本框的字符串

继承了MonoBehaviour的类是不需要你去实例化的,挂在GameObject上有awake和start会走unity的实例化MonoBehaviour的流程。所以你继承了MonoBehaviour的类加泛型是没有意义的。GetComponent<T>的T就是组件类型,比如Transform,你就理解为MonoBehaviour获得泛型组件的方法。unity的GetComponent<T>中的T都是继承自MonoBehaviour

以上就是关于Unity怎么获取一个有参数的方法全部的内容,包括:Unity怎么获取一个有参数的方法、unity3D里面怎么在一个脚本中时时获取另一个脚本中的变量 我在A.js脚本里有一个布尔变量,、Unity3D中在一个脚本中怎么获得另一个脚本中的变量等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9646128.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存