Пример #1
0
        void ShowProjectOptionDialog(ProjectListItem item, Project project)
        {
            if (!m_ProjectOption.IsVisible())
            {
                var contentRectTransform = m_ScrollViewContent.GetComponent <RectTransform>();
                var itemRectTransform    = item.GetComponent <RectTransform>();

                var desiredHeight = itemRectTransform.anchoredPosition.y + contentRectTransform.anchoredPosition.y + itemRectTransform.rect.height;

                m_ProjectOption.Show(project, desiredHeight, m_ScrollRectTransform.rect.height);

                ProjectListItem.ShowOptionButtonHighlight(item);

                m_TapDetector.SetActive(true);
            }
        }
        Vector2 GetOptionPosition(ProjectListItem item)
        {
            var anchoredPositionY = m_ScrollViewContent.GetComponent <RectTransform>().anchoredPosition.y;
            var localPositionY    = item.transform.localPosition.y + anchoredPositionY;

            var itemHeight = item.GetComponent <RectTransform>().rect.height;
            var adjustY    = m_OptionPopupRectTransform.rect.height - itemHeight;

            if (localPositionY - m_OptionPopupRectTransform.rect.height < -m_ScrollRectTransform.rect.height)
            {
                return(new Vector2(m_ProjectOption.transform.localPosition.x, localPositionY + adjustY));
            }
            else
            {
                return(new Vector2(m_ProjectOption.transform.localPosition.x, localPositionY));
            }
        }