Example #1
0
        private void SetContent(bool orientationChanged = false)
        {
            ContentPager.Adapter = null;

            adapter = GetAdapter(this.Resources.Configuration.Orientation);
            if (!orientationChanged || adapter == null)
            {
                adapter = new DesktopContentAdapter(SupportFragmentManager);
                var rowHeight   = Resources.GetDimensionPixelSize(Resource.Dimension.AppCardHeightSize);
                var columnWidth = Resources.GetDimensionPixelSize(Resource.Dimension.AppCardWithtSize);

                AppsToShowForPage = ScreenUtilities.CalculateNumberOfAppsForRows(this, BtnConfig.Height, 0, rowHeight, columnWidth);
                int index = 0;
                var lst   = Helper.Global.AppInfoList.Count;
                if (Helper.Global.AppInfoList != null && AppsToShowForPage > 0)
                {
                    while (Helper.Global.AppInfoList.Count >= (index + 1) * AppsToShowForPage)
                    {
                        var index1 = index;
                        adapter.AddFragmentView((i, v, b) =>
                        {
                            var skip           = index1 * AppsToShowForPage;
                            var view           = i.Inflate(Resource.Layout.AppsFragmentLayout, v, false);
                            var grdview        = view.FindViewById <GridView>(Resource.Id.DescktopAppsGrid);
                            grdview.ItemClick -= GrdviewOnItemClick;
                            grdview.ItemClick += GrdviewOnItemClick;
                            var apps           = Helper.Global.AppInfoList.Skip(skip).Take(AppsToShowForPage).ToList();
                            grdview.Adapter    = new AppAdapter(this, apps);

                            return(view);
                        });
                        index++;
                    }

                    if (Helper.Global.AppInfoList.Count > index * AppsToShowForPage)
                    {
                        adapter.AddFragmentView((i, v, b) =>
                        {
                            var skip           = index * AppsToShowForPage;
                            var view           = i.Inflate(Resource.Layout.AppsFragmentLayout, v, false);
                            var grdview        = view.FindViewById <GridView>(Resource.Id.DescktopAppsGrid);
                            grdview.ItemClick -= GrdviewOnItemClick;
                            grdview.ItemClick += GrdviewOnItemClick;
                            var apps           =
                                Helper.Global.AppInfoList.Skip(skip)
                                .Take(Helper.Global.AppInfoList.Count - index * AppsToShowForPage)
                                .ToList();
                            grdview.Adapter = new AppAdapter(this, apps);
                            return(view);
                        });
                    }
                }

                SetAdapter(this.Resources.Configuration.Orientation, adapter);
            }

            ContentPager.Adapter = adapter;
            ContentPager.SetCurrentItem(CurrentPage, false);
        }
Example #2
0
        private DesktopContentAdapter GetAdapter(Orientation orientation)
        {
            var adapter = _landScape;

            switch (orientation)
            {
            case Orientation.Landscape:
                adapter = _landScape;
                break;

            case Orientation.Portrait:
                adapter = _portrait;
                break;
            }
            return(adapter);
        }
Example #3
0
        private void SetAdapter(Orientation orientation, DesktopContentAdapter adapter)
        {
            switch (orientation)
            {
            case Orientation.Landscape:
                _landScape = adapter;
                break;

            case Orientation.Portrait:
                _portrait = adapter;
                break;

            default:
                _landScape = adapter;
                break;
            }
        }