今天学习了一种Unity中新的存储方法就ScriptableObject
[CreateAssetMenu] //这个一定不能少否则显示不出来
public class Information:ScriptableObject
{
public List<string> name1; //姓名
public List<string> age; //年龄
public List<string> address; //地址
}
然后右键有一个相同名字的点击就可以生成一个资源
public class InforStorage : MonoBehaviour
{
public Information scriptable; //这里的类型是以你定义变量的那个类为变量类型我这里就是(Information),切不能用ScriptableObject这个类
public InputField name1;
public InputField age;
public InputField address;
public Button button;
void Start ()
{
button.onClick.AddListener(ClickConfirmButton);
}
public void ClickConfirmButton()
{
scriptable.name1.Add(name1.text);
scriptable.address.Add(address.text);
scriptable.age.Add(age.text);
}
最后可以看到我们添加的信息就成功的显示到右侧我们定义的类中了。这就是一个最基本的使用scriptableObject来存储我们常用的变量。
最后推荐一位前辈写的博客,很不错https://blog.csdn.net/candycat1992/article/details/52181814
还可以通过内部加载的方式:注意这里必须将我们的脚本和生成的资源都在Resources文件夹里生成,不然或报错。
内部加载Resources.Load<ScriptAbleInfo>("ScriptAsstes"); <脚本名>("生成的资源名");