protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Main);

            var persons = new List <Person>();

            for (int i = 0; i < 50; i++)
            {
                var person = new Person
                {
                    FirstName = $"FirstName {i}",
                    LastName  = $"LastName {i}"
                };

                persons.Add(person);
            }

            var linearLayoutManager = new LinearLayoutManager(this);
            var adapter             = new CustomRecyclerViewAdapter(persons);

            var onScrollListener = new RecyclerViewOnScrollListener(linearLayoutManager);

            onScrollListener.LoadMoreEvent += OnLoadMore;

            _recyclerView = FindViewById <RecyclerView>(Resource.Id.recyclerView);
            _recyclerView.HasFixedSize = true;
            _recyclerView.AddOnScrollListener(onScrollListener);
            _recyclerView.SetLayoutManager(linearLayoutManager);
            _recyclerView.SetAdapter(adapter);

            _swipeRefreshLayout          = FindViewById <SwipeRefreshLayout>(Resource.Id.swipeRefreshLayout);
            _swipeRefreshLayout.Refresh += OnRefresh;
        }
        void SharedInitialize()
        {
            user          = CrossSettings.Current.GetValueOrDefaultJson <User>("User");
            layoutManager = new LinearLayoutManager(activity);
            SetLayoutManager(layoutManager);
            // emptyFeedLayout = FindViewById<LinearLayout>(Resource.Id.emptyFeedLayout);
            var list = new List <FeedItem>();

            if (headerView != null)
            {
                list.Add(new FeedItem());
            }
            adapter = new CustomRecyclerViewAdapter <FeedItem>(list, GetView, CreateViewHolder, GetViewType);
            SetAdapter(adapter);



            // adapter.NoContentText = "No content yet. Try to follow some profiles.";

            AddOnScrollListener(new RecyclerViewScrollListener(() =>
            {
                var visibleItemCount  = ChildCount;
                var totalItemCount    = adapter.Items.Count(/*m => m.PostType != NewsFeedPostTypes.Advertisement*/);
                var pastVisiblesItems = layoutManager.FindFirstVisibleItemPosition();

                if ((visibleItemCount + pastVisiblesItems) >= totalItemCount && !LoadingData && totalItemCount > 9 && totalItemCount != 0 && itemsLoaded >= 20)
                {
                    GetNewsFeedItems(false);
                }
            }));

            GetNewsFeedItems(true);
        }