示例#1
0
        //Add Like >> Near By
        private void MAdapterOnUsersLikeButtonItemClick(object sender, NearByAdapterClickEventArgs e)
        {
            try
            {
                if (!Methods.CheckConnectivity())
                {
                    Toast.MakeText(Activity, Activity.GetString(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                    return;
                }

                if (e.Position <= -1)
                {
                    return;
                }

                var item = MAdapter.GetItem(e.Position);
                if (item != null)
                {
                    if (item.UsersData.IsLiked != null && item.UsersData.IsLiked.Value)
                    {
                        item.UsersData.IsLiked = false;
                        //sent api
                        PollyController.RunRetryPolicyFunction(new List <Func <Task> > {
                            () => RequestsAsync.Users.DeleteLikesAsync(item.UsersData.Id.ToString())
                        });
                    }
                    else
                    {
                        item.UsersData.IsLiked = true;
                        //sent api
                        PollyController.RunRetryPolicyFunction(new List <Func <Task> > {
                            () => RequestsAsync.Users.AddLikesAsync(item.UsersData.Id.ToString(), "")
                        });
                    }

                    MAdapter.NotifyItemChanged(e.Position);
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }