Пример #1
0
        private void Start()
        {
            m_list = Enumerable
                     .Range(0, 5)
                     .Select(c => (c + 1).ToString("0000"))
                     .Select(c => new ListItemData(c))
                     .ToArray()
            ;

            var initParam = new LoopListViewInitParam
            {
                mSmoothDumpRate   = 0.1f,
                mSnapVecThreshold = 99999,
            };

            m_view.mOnSnapNearestChanged = OnSnapNearestChanged;
            m_view.InitListView(-1, OnUpdate, initParam);
        }
        /// <summary>
        /// ループするバナーの初期化(ボタン付き
        /// </summary>
        /// <typeparam name="TExtensionBanner"></typeparam>
        /// <typeparam name="TExtensionBannerData"></typeparam>
        /// <param name="view"></param>
        /// <param name="dotAction"></param>
        /// <param name="bannerDataList"></param>
        public void InitBannerLoop <TExtensionBanner, TExtensionBannerData>(LoopListView2 view, Action <int> dotAction, List <TExtensionBannerData> bannerDataList)
            where TExtensionBanner : IExtensionBanner
            where TExtensionBannerData : ExtensionScrollItemData
        {
            var initParam = new LoopListViewInitParam
            {
                mSmoothDumpRate   = 0.1f,
                mSnapVecThreshold = 99999,
            };

            ScrollItemDataList = new List <ExtensionScrollItemData>(bannerDataList);
            DotAction          = dotAction;

            view.mOnSnapNearestChanged = OnUpdateBannerDot;
            view.InitListView(-1, OnUpdateBanner <TExtensionBanner>, initParam);

            //自動スクロール(Intervalで図る
        }
Пример #3
0
    public LoopScrollRect2LoopListView2(LoopListView2 lv, string poolName, int itemCount = 0, UnityAction <int> scrollRectIndexCallback = null)
    {
        if (listView == null)
        {
            this.poolName = poolName;
            listView      = lv;
            scrollRect    = lv.GetComponent <ScrollRect>();
            LoopListViewInitParam initParam = LoopListViewInitParam.CopyDefaultInitParam();
            ItemPrefabConfData    data      = lv.GetFirstItemPrefabConfData();

            if (data != null)
            {
                Vector2 size       = data.mItemPrefab.GetComponent <RectTransform>().sizeDelta;
                bool    isVertList = (lv.ArrangeType == ListItemArrangeType.TopToBottom || lv.ArrangeType == ListItemArrangeType.BottomToTop);
                initParam.mItemDefaultWithPaddingSize  = isVertList ? size.y : size.x;
                initParam.mItemDefaultWithPaddingSize += data.mPadding;
            }

            initParam.mDistanceForNew0 = 100;
            initParam.mDistanceForNew1 = 100;
            listView.InitListView(itemCount, OnGetItemByIndex, initParam);
            this.scrollRectIndexCallBack = scrollRectIndexCallback;
        }
    }