private void ResetShowDetailEffect() { for (int i = startRow - 1; i < endRow + 1; i++) { for (int j = 0; j < m_Column; j++) { UIImageItem uIImageItem = GetItem(i, j); RectTransform rect = uIImageItem.GetComponent <RectTransform>(); float x = rect.anchoredPosition.x; float y = 0; if (j >= startColumn && j <= endColumn + 1) { //if (i <= middleRow) // y = rect.anchoredPosition.y - 4 * (m_ImageItemHeight + m_ImageSpace); //else // y = rect.anchoredPosition.y + 4 * (m_ImageItemHeight + m_ImageSpace); } else { y = -i * (m_ImageItemHeight + m_ImageSpace); } uIImageItem.SetPosition(uIImageItem.GetComponent <RectTransform>().anchoredPosition, new Vector2(x, y), 0.2f); } } isEffect = false; }
private void CreateImageItem(int index, Texture2D texture) { var curRow = index / m_Column; var itemData = m_ItemDatas[index]; UIImageItem uIImageItem = Instantiate(m_UIImageItem, transform); uIImageItem.gameObject.SetActive(true); uIImageItem.Init(itemData); uIImageItem.SetImage(texture); uIImageItem.SetText(index.ToString()); uIImageItem.SetSize(m_ImageItemWidth, m_ImageItemHeight); uIImageItem.SetPosition(new Vector2(Screen.width, -curRow * (m_ImageItemHeight + m_ImageSpace)), itemData.position); uIImageItem.OnImageItemClicked = OnItemClicked; m_UIImageItems.Add(itemData, uIImageItem); }
private void SetShowDetailEffect() { if (isEffect) { return; } for (int i = startRow - 2; i < endRow + 2; i++) { for (int j = 0; j < m_Column; j++) { float yMin = -2 * (m_ImageItemHeight + m_ImageSpace); float yMax = +2 * (m_ImageItemHeight + m_ImageSpace); if (j >= startColumn && j <= endColumn + 1) { UIImageItem uIImageItem = GetItem(i, j); RectTransform rect = uIImageItem.GetComponent <RectTransform>(); float x = rect.anchoredPosition.x, y = 0; if (i <= middleRow) { y = rect.anchoredPosition.y + yMax; } else { y = rect.anchoredPosition.y - yMin; } uIImageItem.SetPosition(uIImageItem.GetComponent <RectTransform>().anchoredPosition, new Vector2(x, y), 0.2f); } else { float y = UnityEngine.Random.Range(yMin, yMax); } } } isEffect = true; }