Arrays 索引值的数组不是从0开始的

Arrays 索引值的数组不是从0开始的,arrays,unity3d,clone,gameobject,Arrays,Unity3d,Clone,Gameobject,我有两个按钮来加载不同的纹理图像,当我按第1个按钮时,它加载纹理中的4个图像,当我按第2个按钮时,它加载纹理中的3个图像。但问题是,当我按下第一个按钮时,它会加载4个图像,当我按下第二个按钮时,它会加载图像,但它从第五位开始。当我按下第二个按钮时,无法将值重置为0 private int clonevalue = 0; public int i = 0; string response = www.text; IDictionary search = (IDic

我有两个按钮来加载不同的纹理图像,当我按第1个按钮时,它加载纹理中的4个图像,当我按第2个按钮时,它加载纹理中的3个图像。但问题是,当我按下第一个按钮时,它会加载4个图像,当我按下第二个按钮时,它会加载图像,但它从第五位开始。当我按下第二个按钮时,无法将值重置为0

 private int clonevalue = 0;
     public int i = 0;


 string response = www.text;
        IDictionary search = (IDictionary) Json.Deserialize(response);

        IList linksObject = (IList) search["Products"];  //Here searching only products array


        foreach (IDictionary modellinksArray in linksObject) {



            string cat_id=string.Format("{0} ", modellinksArray["category_id"]);   //From products array getting the category_id
            //int catd_id_int = int.Parse(cat_id);  //Converting the string value to integer



            if(cat_id == myId){//Now, i have used static code value of 4 and if the value match and we can gets only matching category model. Here you can pass the id value of category list selected.

                int clonevalue = 0;
                int i = 0;

                // i = 0;
                cloneGO = Instantiate(myScrollTexture)as GameObject;
                cloneGO.transform.parent = parentObject.transform;
                cloneGO.transform.localPosition =new Vector3(127,30,0);
                cloneGO.transform.localScale =Vector3.one;
                cloneGO.name = "cloneScrollTexture"+i;

                string myTexture = string.Format("{0} ", modellinksArray["imageurl"]);
                string modelUrl = string.Format("{0} ", modellinksArray["modelurl"]);
                i++;
                //StartCoroutine(Load3D(modal3d,modal3d));

                cloneGO.GetComponent<dynamicmodelload>().modelURL = modelUrl;


                //Destroy(cloneGO);

                WWW www1 = new WWW(myTexture);
                Debug.Log("text"+myTexture);

                yield return www1;

                //if(!www1.isDone){
                    //yield return null;  
                //}
                //if(www1.isDone){
                    Debug.Log (clonevalue);
                    //clonevalue = 0;
                    //DebugConsole.Log (clonevalue);

                    myTextureObject = GameObject.Find ("cloneScrollTexture" + clonevalue);
                    //Debug.Log (myTextureObject);
                    clonevalue++;
                    Debug.Log (myTexture);
                    myTextureObject.GetComponent<UITexture>().mainTexture = www1.texture;
                    Debug.Log ("myTextureObject"+myTexture);
                    //DebugConsole.Log ("myTextureObject"+myTexture);


                    if (myTextureObject.name == "cloneScrollTexture"+evenValues) {
                        myTextureObject.transform.localPosition =new Vector3(-81,30,0);
                        evenValues +=2;
                        Debug.Log (evenValues);
                        //DebugConsole.Log (evenValues);
                    }

                    if(myTextureObject.name == "cloneScrollTexture"+yevenValue){
                        yValue += 210;
                        Debug.Log("yevenValue"+yevenValue);
                        //DebugConsole.Log("yevenValue"+yevenValue);
                        yevenValue +=2;

                    }
                    //for(int i=0; i< 2; i++){
                    Debug.Log ("yValue"+yValue);
                    //DebugConsole.Log ("yValue"+yValue);
                    myTextureObject.transform.localPosition -=new Vector3(0,yValue,0);
                    Debug.Log ("myTextureObject"+myTextureObject.transform.localPosition);
                    //evenValues +=2;
                    //  test = 5;

            }
private int clonevalue=0;
公共整数i=0;
字符串响应=www.text;
IDictionary search=(IDictionary)Json.Deserialize(响应);
IList链接对象=(IList)搜索[“产品”]//这里只搜索产品数组
foreach(linksObject中的IDictionary modellinksArray){
string cat_id=string.Format(“{0}”,modellinksArray[“category_id”]);//从products数组获取category_id
//int catd_id_int=int.Parse(cat_id);//将字符串值转换为整数
如果(cat_id==myId){//现在,我使用了静态代码值4,如果值匹配,我们只能得到匹配的类别模型。在这里,您可以传递所选类别列表的id值。
int clonevalue=0;
int i=0;
//i=0;
cloneGO=实例化(myScrollTexture)为游戏对象;
cloneGO.transform.parent=parentObject.transform;
cloneGO.transform.localPosition=新向量3(127,30,0);
cloneGO.transform.localScale=Vector3.one;
cloneGO.name=“cloneScrollTexture”+i;
string myTexture=string.Format(“{0}”,modellinksArray[“imageurl]”);
string modelUrl=string.Format(“{0}”,modellinksArray[“modelUrl”]);
i++;
//start例程(Load3D(modal3d,modal3d));
cloneGO.GetComponent().modelURL=modelURL;
//销毁(cloneGO);
WWW www1=新WWW(myTexture);
Log(“文本”+myTexture);
收益率www1;
//如果(!www1.isDone){
//收益返回空;
//}
//如果(www1.isDone){
Log(clonevalue);
//克隆值=0;
//DebugConsole.Log(clonevalue);
myTextureObject=GameObject.Find(“cloneScrollTexture”+clonevalue);
//Log(myTextureObject);
clonevalue++;
Log(myTexture);
myTextureObject.GetComponent().mainTexture=www1.texture;
Log(“myTextureObject”+myTexture);
//Log(“myTextureObject”+myTexture);
if(myTextureObject.name==“cloneScrollTexture”+evenValues){
myTextureObject.transform.localPosition=新向量3(-81,30,0);
平均值+=2;
Debug.Log(值);
//DebugConsole.Log(值);
}
if(myTextureObject.name==“cloneScrollTexture”+yevenValue){
y值+=210;
Debug.Log(“yevenValue”+yevenValue);
//DebugConsole.Log(“yevenValue”+yevenValue);
yevenValue+=2;
}
//对于(int i=0;i<2;i++){
Log(“yValue”+yValue);
//DebugConsole.Log(“yValue”+yValue);
myTextureObject.transform.localPosition-=新向量3(0,yValue,0);
Log(“myTextureObject”+myTextureObject.transform.localPosition);
//平均值+=2;
//试验=5;
}

当我按下第一个按钮时,克隆值传递到0。因此,纹理图像正确加载到第0个位置,但当我按下第二个按钮时,克隆值传递到第5个位置。因此,纹理图像显示在第5个位置。因此,当我按下第二个按钮时,如何重置克隆值0。这样,我就可以轻松地传递到0。

p将上面的所有代码转换成一个方法,并使“clonevalue”变量成为局部变量,因此每次调用该方法时,都会称为“clonevalue”将从0开始。我不理解这行,将上面的所有代码放入一个方法中,我是否需要将I也作为局部变量。因为如果我增加,则clonevalue也会增加如果我使用局部变量,并且所有纹理图像仅显示在第0个位置,它不会逐个显示或用于滚动参数化方法将整数循环一定次数。例如public void SomeMethod(int循环){for(int i=0;i