unity 左右翻页功能

代码如下。Taget代表所有物体的父类,str是int类型的代表页数,LineCount代表一行有多少个物体。count 代表总数量

    /// 
    /// 向左翻页
    /// 
    public void Z()
    {
        Debug.Log("向左" + str);

        if (str >= 0)
        {
            if (str == 0)
            {
                str = 0;
                return;
            }
            else
            {
                str--;
            }
          
            for (int i = 0; i < Taget.childCount; i++)
            {
                if (i >= str * LineCount && i < LineCount * (str + 1))
                {
                    if (Taget.GetChild(i) != null)
                    {
                        Taget.GetChild(i).gameObject.SetActive(true);
                    }

                }
                else
                {
                    Taget.GetChild(i).gameObject.SetActive(false);
                }
            }


        }


    }
    /// 
    /// 向右翻页
    /// 
    public void Y()
    {
        if (str < (count / 10))
        {
            str = str + 1;
            Debug.Log("向右" + str);
            if (str == (count / 10))
            {
                str = (count / 10);
            }
            //PageNuber.text = (str + 1).ToString();
            for (int i = 0; i < Taget.childCount; i++)
            {
                if (i >= str * LineCount && i < LineCount * (str + 1))
                {
                    Debug.Log("数量" + (str - 1));
                    Debug.Log(10 * str);
                    if (Taget.GetChild(i) != null)
                    {
                        Taget.GetChild(i).gameObject.SetActive(true);
                    }
                }
                else
                {
                    Taget.GetChild(i).gameObject.SetActive(false);
                }
            }
        }
    }

你可能感兴趣的:(学习)