private void setVoteButtonState(FeedItemAdapterViewHolder viewHolder, int vote) { if (vote == 1) { //Liked viewHolder.Like.Text = "Liked"; viewHolder.Like.Enabled = false; viewHolder.Dislike.Text = "Dislike"; viewHolder.Dislike.Enabled = true; } else if (vote == -1) { //Disliked viewHolder.Dislike.Text = "Disliked"; viewHolder.Dislike.Enabled = false; viewHolder.Like.Text = "Like"; viewHolder.Like.Enabled = true; } else { //Not voted viewHolder.Dislike.Text = "Dislike"; viewHolder.Dislike.Enabled = true; viewHolder.Like.Text = "Like"; viewHolder.Like.Enabled = true; } }
private void vote(FeedItemAdapterViewHolder viewHolder, PostModel item, int vote) { Task.Run(async() => { return(await Api.DavinciApi.VotePost(item._id, vote)); }).ContinueWith(t => { if (t.Status != TaskStatus.Canceled && t.Result.OK) { item.likes = t.Result.likes; item.dislikes = t.Result.dislikes; viewHolder.Ratio.SetRatio(item.LikeRatio); setVoteButtonState(viewHolder, vote); } }, TaskScheduler.FromCurrentSynchronizationContext()); }