Unity3d 中行为类之间的简单交互

下面我们来建立一个书的行为类文件
using UnityEngine;
using System.Collections;
using System.IO;
using System.Xml;
public class Book : MonoBehaviour {
// Use this for initialization
string _FileLocation;
string _FileName = “MConfig.xml”;
string _xmlData;
XmlDocument configData;
private ArrayList pages;
public GameObject page;
private int index = 0;
private int pageLen = 0;
void Start () {
_FileLocation = Application.dataPath;
pages = new ArrayList();
LoadXML();
initBook();
}
// Update is called once per frame
void Update () {
}
void LoadXML() {
StreamReader r = File.OpenText(_FileLocation + “\\” + _FileName);
string info = r.ReadToEnd();
r.Close();
_xmlData = info;
configData = new XmlDocument();
configData.LoadXml(_xmlData);
}
void initBook() {
foreach (XmlNode item in configData.SelectNodes(“/mConfig/page”))
{
//print(item.Attributes["murl"].Value);材质路径
GameObject obj = (GameObject)Instantiate(page);
obj.renderer.material.mainTexture = (Texture)Resources.Load(item.Attributes["murl"].Value);
pages.Add(obj);
pageLen++;
}
}
public void PageUp(){
print(“page Up”);
}
public void PageDown() {
print(“page Down”);
}
}
这里我们用了加载XML的方式来生成指定的书的页
那么我们如何才能控制PageUp()以及PageDown()方法呢?
具体的方式是通过如下代码
using UnityEngine;
using System.Collections;
public class NButton : MonoBehaviour {
// Use this for initialization
private Book book;
void Start () {
}
// Update is called once per frame
void Update () {
}
void OnMouseDown() {
book = (Book)GameObject.Find(“Book”).GetComponent(typeof(Book));
book.PageDown();
}
}
此行为类绑定到了一个图形界面按钮上.通过点击此按钮来达到控制书内的方法来实现上一页与下一页的翻译动作.

你可能感兴趣的:(Unity3d 中行为类之间的简单交互)