我挂了一些我无法解决的事情,我真的可以用一双新鲜的眼睛。我正在加载一组图像,将其中一个分配给LoadGallery.cs中的纹理。然后在LoadImage中我有一个按钮,当点击时运行LoadImg但是当我点击按钮时没有任何反应。纹理不会分配给GameObject。我也没有收到任何错误。当它完全在IEnumerator函数中时,脚本工作正常,但当我把它拉出到另一个脚本中时,我什么都没得到。我错了什么?
LoadGallery.cs
public Texture2D tex;
// Use this for initialization
void Start () {
StartCoroutine("LoadAllImages");
}
IEnumerator LoadAllImages()
{
string[] filePaths = Directory.GetFiles(@"/Users/kenmarold/Screenshots/TATUS/", "*.png");
WWW www = new WWW("file://" + filePaths[0]);
yield return www;
Texture2D tex = new Texture2D(512,512);
www.LoadImageIntoTexture(tex);
}
LoadImage.cs
void LoadImg()
{
GameObject galleryLoader = GameObject.FindGameObjectWithTag("GalleryLoader");
LoadGallery loadGallery = galleryLoader.GetComponent<LoadGallery>();
Rect rct = new Rect(0, 0, loadGallery.tex.width, loadGallery.tex.height);
Vector2 pvt = new Vector2(0.5f, 0.5f);
GameObject screenShotImg = GameObject.FindGameObjectWithTag("screenshot");
Image img = screenShotImg.GetComponent<Image>();
img.sprite = Sprite.Create(loadGallery.tex, rct, pvt);
}
答案 0 :(得分:0)
我看不出你在做什么有什么不对。这些是我经验中常见的错误:
1.您可能忘记将功能LoadImg分配给按钮
2. UI对象的大小&#34;截图&#34;太小。尝试分配一些虚拟图像以查看它是否实际显示了某些内容
3.加载图库时可能会有一些异常。尝试检查www.error。仔细调试。
祝你工作顺利。