Ejemplo n.º 1
0
        public NewsFeedAdapter(Activity context, PRecyclerView recyclerView)
        {
            try
            {
                ActivityContext  = context;
                MainRecyclerView = recyclerView;

                PreCachingLayoutManager mLayoutManager = new PreCachingLayoutManager(ActivityContext)
                {
                    Orientation = LinearLayoutManager.Vertical
                };

                mLayoutManager.SetPreloadItemCount(5);

                MainRecyclerView.SetLayoutManager(mLayoutManager);
                MainRecyclerView.GetLayoutManager().ItemPrefetchEnabled = true;
                FullGlideRequestBuilder = Glide.With(context).AsDrawable().SetDiskCacheStrategy(DiskCacheStrategy.Automatic).SkipMemoryCache(true).Override(550).Placeholder(new ColorDrawable(Color.ParseColor("#efefef")));

                FixedPreloadSizeProvider            sizeProvider = new FixedPreloadSizeProvider(10, 10);
                RecyclerViewPreloader <PostsObject> preLoader    = new RecyclerViewPreloader <PostsObject>(context, this, sizeProvider, 8);
                MainRecyclerView.AddOnScrollListener(preLoader);

                MainRecyclerView.SetAdapter(this);

                PixelNewsFeedList = new ObservableCollection <PostsObject>();

                ReadMoreOption = new ReadMoreOption.Builder(ActivityContext)
                                 .TextLength(200, ReadMoreOption.TypeCharacter)
                                 .MoreLabel(ActivityContext.GetText(Resource.String.Lbl_ReadMore))
                                 .LessLabel(ActivityContext.GetText(Resource.String.Lbl_ReadLess))
                                 .MoreLabelColor(Color.ParseColor(AppSettings.MainColor))
                                 .LessLabelColor(Color.ParseColor(AppSettings.MainColor))
                                 .LabelUnderLine(true)
                                 .Build();

                ClickListeners = new SocialIoClickListeners(context);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Ejemplo n.º 2
0
        private void SetRecyclerViewAdapters()
        {
            try
            {
                MAdapter       = new NewsFeedAdapter(Activity, MRecycler);
                MLayoutManager = new LinearLayoutManager(Context);
                MRecycler.SetLayoutManager(MLayoutManager);
                MRecycler.SetXAdapter(MAdapter, false);

                RecyclerViewOnScrollListener xamarinRecyclerViewOnScrollListener = new RecyclerViewOnScrollListener(MLayoutManager);
                MainScrollEvent = xamarinRecyclerViewOnScrollListener;
                MainScrollEvent.LoadMoreEvent += MainScrollEventOnLoadMoreEvent;
                MRecycler.AddOnScrollListener(xamarinRecyclerViewOnScrollListener);
                MainScrollEvent.IsLoading = false;
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }