void OnItemInit2(Lzh_LoopItemObject item, Lzh_LoopItemData data) { Lzh_LoopItemData2 myData = data as Lzh_LoopItemData2; lzh_LoopItemTest2 itemComp = item.widget.GetComponent <lzh_LoopItemTest2> (); string font = "item:"; itemComp.lblName.text = font + myData.name; itemComp.icon.spriteName = iconSpriteNames[Random.Range(0, iconSpriteNames.Count)]; }
/// <summary> /// 用数据列表来初始化scrollview /// </summary> /// <param name="item">Item.</param> /// <param name="indexData">Index data.</param> /// <param name="data">Data.</param> void InitItem(Lzh_LoopItemObject item, int dataIndex, Lzh_LoopItemData data) { item.dataIndex = dataIndex; if (OnItemInit != null) { OnItemInit(item, data); } item.widget.transform.localPosition = itemStartPos; }
void OnItemInit1(Lzh_LoopItemObject item, Lzh_LoopItemData data) { Lzh_LoopItemData1 myData = data as Lzh_LoopItemData1; lzh_LoopItemTest1 itemComp = item.widget.GetComponent <lzh_LoopItemTest1> (); string front = "item:"; if (item.dataIndex % 3 == 1) { front += "\n"; } else if (item.dataIndex % 3 == 2) { front += "\n\n"; } itemComp.lblName.text = front + myData.name.ToString(); item.widget.height = itemComp.lblName.height + 18; }
/// <summary> /// 在itemsList后面补上一个item /// </summary> void AddToBack(Lzh_LoopItemObject backItem, Lzh_LoopItemObject newItem, int newIndex, Lzh_LoopItemData newData) { InitItem(newItem, newIndex, newData); // 计算新item的位置 if (scrollView.movement == UIScrollView.Movement.Vertical) { float offsetY = backItem.widget.height * 0.5f + gapDis + newItem.widget.height * 0.5f; if (arrangeDirection == ArrangeDirection.Down_to_Up) { offsetY *= -1f; } newItem.widget.transform.localPosition = backItem.widget.cachedTransform.localPosition - new Vector3(0f, offsetY, 0f); } else { float offsetX = backItem.widget.width * 0.5f + gapDis + newItem.widget.width * 0.5f; if (arrangeDirection == ArrangeDirection.Right_to_Left) { offsetX *= -1f; } newItem.widget.transform.localPosition = backItem.widget.cachedTransform.localPosition + new Vector3(offsetX, 0f, 0f); } }