コード例 #1
0
        private async void MAdapterOnJoinButtonItemClick(object sender, SuggestedGroupAdapterClickEventArgs e)
        {
            try
            {
                var item = MAdapter.GetItem(e.Position);
                if (item == null)
                {
                    return;
                }

                if (!Methods.CheckConnectivity())
                {
                    Toast.MakeText(this, this.GetString(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short)?.Show();
                    return;
                }

                var(apiStatus, respond) = await RequestsAsync.Group.Join_Group(item.GroupId);

                if (apiStatus == 200)
                {
                    if (respond is JoinGroupObject result)
                    {
                        if (result.JoinStatus == "requested")
                        {
                            e.JoinButton.SetTextColor(Color.White);
                            e.JoinButton.Text = Application.Context.GetText(Resource.String.Lbl_Request);
                            e.JoinButton.SetBackgroundResource(Resource.Drawable.buttonFlatGray);
                        }
                        else
                        {
                            var isJoined = result.JoinStatus == "left" ? "false" : "true";
                            e.JoinButton.Text = this.GetText(isJoined == "yes" || isJoined == "true" ? Resource.String.Btn_Joined : Resource.String.Btn_Join_Group);

                            if (isJoined == "yes" || isJoined == "true")
                            {
                                e.JoinButton.SetBackgroundResource(Resource.Drawable.buttonFlatGray);
                                e.JoinButton.SetTextColor(Color.White);
                            }
                            else
                            {
                                e.JoinButton.SetBackgroundResource(Resource.Drawable.buttonFlat);
                                e.JoinButton.SetTextColor(Color.White);
                            }
                        }
                    }
                }
                else
                {
                    Methods.DisplayReportResult(this, respond);
                }
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
            }
        }
コード例 #2
0
 //Open Profile Suggested Group
 private void MAdapterOnItemClick(object sender, SuggestedGroupAdapterClickEventArgs e)
 {
     try
     {
         var item = MAdapter.GetItem(e.Position);
         if (item != null)
         {
             MainApplication.GetInstance()?.NavigateTo(this, typeof(GroupProfileActivity), item);
         }
     }
     catch (Exception exception)
     {
         Methods.DisplayReportResultTrack(exception);
     }
 }