private void AddLikedItemView(LikedItem dataModel, StackLayout parent) { LikedItemView result = new LikedItemView(dataModel); result.Clicked += OnLikedItemClicked; parent.Children.Add(result); parent.Children.Add(GetSeparator()); }
public void Update(List <UserVoteData> result) { foreach (UserVoteData voteData in result) { UserVoteData current = Model.Find(temp => temp.Subject.Equals(voteData.Subject)); if (current != null && current.UpdatedAtTime < voteData.UpdatedAtTime) { current.UpdateWithItem(voteData); LikedItem item = Items.Find(temp => temp.VoteData.Subject.Equals(current.Subject)); item.Update(); } } }
public LikedItemView(LikedItem item) { Data = item; Data.IsChanged += Data_IsChanged; var layout = new AbsoluteLayout { Padding = new Thickness(0, 5, 0, 5) }; layout.Children.Add(new Label { Text = Data.Name, FontSize = Data.UI_NameFontSize, TextColor = AppResources.LikedItemTextColor }, new Point(40, Data.UI_TextYPosition)); _likeImage = new Image { Source = ImageLoader.Instance.GetImage(Data.LikeImage, true), HeightRequest = Data.UI_ImageHeight }; TapGestureRecognizer likeRecognizer = new TapGestureRecognizer(); likeRecognizer.Tapped += OnLikeTapped; _likeImage.GestureRecognizers.Add(likeRecognizer); _dislikeImage = new Image { Source = ImageLoader.Instance.GetImage(Data.DislikeImage, true), HeightRequest = Data.UI_ImageHeight }; TapGestureRecognizer dislikeRecognizer = new TapGestureRecognizer(); dislikeRecognizer.Tapped += OnDislikeTapped; _dislikeImage.GestureRecognizers.Add(dislikeRecognizer); layout.Children.Add(_likeImage, new Point(Data.UI_LikeXPosition, 0)); layout.Children.Add(_dislikeImage, new Point(Data.UI_DislikeXPosition, 0)); Content = layout; }
private void OnLikedItemClicked(LikedItem likedItem, bool newState) { UserController.Instance.PostVote(likedItem.VoteData, newState, likedItem); }