public override void OnViewCreated(View view, Bundle savedInstanceState) { if (!IsInitialized) { base.OnViewCreated(view, savedInstanceState); Presenter.SourceChanged += PresenterSourceChanged; _adapter = new FeedAdapter <FeedPresenter>(Context, Presenter); _adapter.PostAction += PostAction; _adapter.AutoLinkAction += AutoLinkAction; _logo.Click += OnLogoClick; _browseButton.Click += GoToBrowseButtonClick; _toolbar.OffsetChanged += OnToolbarOffsetChanged; _scrollListner = new ScrollListener(); _scrollListner.ScrolledToBottom += LoadPosts; _refresher.Refresh += OnRefresh; _feedList.SetAdapter(_adapter); _feedList.SetLayoutManager(new LinearLayoutManager(Android.App.Application.Context)); _feedList.AddOnScrollListener(_scrollListner); _postPager.SetClipToPadding(false); _postPager.SetPadding(Style.PostPagerMargin * 2, 0, Style.PostPagerMargin * 2, 0); _postPager.PageMargin = Style.PostPagerMargin; _postPager.PageScrollStateChanged += PostPagerOnPageScrollStateChanged; _postPager.PageScrolled += PostPagerOnPageScrolled; _postPagerAdapter = new PostPagerAdapter <FeedPresenter>(_postPager, Context, Presenter); _postPagerAdapter.PostAction += PostAction; _postPagerAdapter.AutoLinkAction += AutoLinkAction; _postPagerAdapter.CloseAction += CloseAction; _postPager.Adapter = _postPagerAdapter; _postPager.SetPageTransformer(false, _postPagerAdapter, (int)LayerType.None); _emptyQueryLabel.Typeface = Style.Light; _emptyQueryLabel.Text = AppSettings.LocalizationManager.GetText(LocalizationKeys.EmptyCategory); _mainMessage.Text = AppSettings.LocalizationManager.GetText(LocalizationKeys.Greeting); _hintMessage.Text = AppSettings.LocalizationManager.GetText(LocalizationKeys.EmptyFeedHint); _browseButton.Text = AppSettings.LocalizationManager.GetText(LocalizationKeys.GoToBrowse); LoadPosts(); } var postUrl = Activity?.Intent?.GetStringExtra(CommentsFragment.ResultString); if (!string.IsNullOrWhiteSpace(postUrl)) { var count = Activity.Intent.GetIntExtra(CommentsFragment.CountString, 0); Activity.Intent.RemoveExtra(CommentsFragment.ResultString); Activity.Intent.RemoveExtra(CommentsFragment.CountString); var post = Presenter.FirstOrDefault(p => p.Url == postUrl); post.Children += count; _adapter.NotifyDataSetChanged(); } }
public override void OnViewCreated(View view, Bundle savedInstanceState) { if (!IsInitialized) { base.OnViewCreated(view, savedInstanceState); Presenter.SourceChanged += PresenterSourceChanged; _adapter = new FeedAdapter <FeedPresenter>(Context, Presenter); _adapter.LikeAction += LikeAction; _adapter.UserAction += UserAction; _adapter.CommentAction += CommentAction; _adapter.VotersClick += VotersAction; _adapter.PhotoClick += FeedPhotoClick; _adapter.FlagAction += FlagAction; _adapter.HideAction += HideAction; _adapter.TagAction += TagAction; _postPagerAdapter = new PostPagerAdapter <FeedPresenter>(Context, Presenter); _postPagerAdapter.LikeAction += LikeAction; _postPagerAdapter.UserAction += UserAction; _postPagerAdapter.CommentAction += CommentAction; _postPagerAdapter.VotersClick += VotersAction; _postPagerAdapter.PhotoClick += PhotoClick; _postPagerAdapter.FlagAction += FlagAction; _postPagerAdapter.HideAction += HideAction; _postPagerAdapter.DeleteAction += DeleteAction; _postPagerAdapter.TagAction += TagAction; _postPagerAdapter.CloseAction += CloseAction; _logo.Click += OnLogoClick; _toolbar.OffsetChanged += OnToolbarOffsetChanged; _scrollListner = new ScrollListener(); _scrollListner.ScrolledToBottom += LoadPosts; _refresher.Refresh += OnRefresh; _feedList.SetAdapter(_adapter); _feedList.SetLayoutManager(new LinearLayoutManager(Android.App.Application.Context)); _feedList.AddOnScrollListener(_scrollListner); _postPager.SetClipToPadding(false); var pagePadding = (int)BitmapUtils.DpToPixel(20, Resources); _postPager.SetPadding(pagePadding, 0, pagePadding, 0); _postPager.PageMargin = pagePadding / 2; _postPager.PageScrollStateChanged += PostPagerOnPageScrollStateChanged; _postPager.PageScrolled += PostPagerOnPageScrolled; _postPager.Adapter = _postPagerAdapter; _postPager.SetPageTransformer(false, _postPagerAdapter, (int)LayerType.None); _emptyQueryLabel.Typeface = Style.Light; _emptyQueryLabel.Text = Localization.Texts.EmptyQuery; LoadPosts(); } var postUrl = Activity?.Intent?.GetStringExtra(CommentsFragment.ResultString); if (!string.IsNullOrWhiteSpace(postUrl)) { var count = Activity.Intent.GetIntExtra(CommentsFragment.CountString, 0); Activity.Intent.RemoveExtra(CommentsFragment.ResultString); Activity.Intent.RemoveExtra(CommentsFragment.CountString); var post = Presenter.FirstOrDefault(p => p.Url == postUrl); post.Children += count; _adapter.NotifyDataSetChanged(); } }