예제 #1
0
 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;
     }
 }
예제 #2
0
 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());
 }