Ejemplo n.º 1
0
        public void SetViewPager(ViewPager viewPager, int pos)
        {
            ViewPager = viewPager;

            //页面选中
            ViewPager.PageSelected += (sender, args) =>
            {
                SetHighLightTextView(args.Position);

                //回调给外部
                OnPageSelected?.Invoke(this, new ViewPager.PageSelectedEventArgs(args.Position));
            };
            //页面滚动
            ViewPager.PageScrolled += (sender, args) =>
            {
                OnScoll(args.Position, args.PositionOffset);

                OnPageScrolled?.Invoke(this,
                                       new ViewPager.PageScrolledEventArgs(args.Position, args.PositionOffset, args.PositionOffsetPixels));
            };

            //页面滚动状态
            ViewPager.PageScrollStateChanged += (sender, args) =>
            {
                OnPageScrollStateChanged?.Invoke(this, new ViewPager.PageScrollStateChangedEventArgs(args.State));
            };

            // 设置当前页
            ViewPager.CurrentItem = pos;
            _position             = pos;
        }
Ejemplo n.º 2
0
        public async Task PageClickHandlerAsync(MouseEventArgs args, int pageNum)
        {
            if (pageNum < 1 || pageNum > PageCount || pageNum == CurrentPage)
            {
                return;
            }

            CurrentPage = pageNum;

            await OnPageSelected.InvokeAsync(new BulPageClickEventArgs(args, pageNum));
        }