Doubt when obtaining the value of a radioGroup to send in an email

Asked

Viewed 38 times

0

Hello, in my code I have 4 Radiogroups and I will pass their value in an email. So far so good, but in my code I am not able to (I don’t know how to do) send only the text of Radiogroup that was selected.

I am currently kind of forcing the user to choose a radiobutton from each radiogroup (4 in total), but actually I wanted to allow the user to choose only 1 Radiogroup and the program will send this value.

For example in the line below, it requires the user to select the 4 radioGroups.

email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo1.Text + " , " + rdbgrupo2.Text + " , " + rdbgrupo3.Text + " e " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);

How should I make sure that depending on the radiogroup the user chooses, the program gets the text and sends it? I should do several if/Else locking all possibilities of combinations or has how to do with a for each?

Below is the code of the Send button

void enviar_Click(object sender, EventArgs e)
        {
            try
            {
                RadioButton rdbgrupo1 = FindViewById<RadioButton>(rdgconquiste.CheckedRadioButtonId);
                RadioButton rdbgrupo2 = FindViewById<RadioButton>(rdgcrie.CheckedRadioButtonId);
                RadioButton rdbgrupo3 = FindViewById<RadioButton>(rdgviva.CheckedRadioButtonId);
                RadioButton rdbgrupo4 = FindViewById<RadioButton>(rdgentregue.CheckedRadioButtonId);
                int RadioGroupIsChecked(RadioGroup radioGroup)
                {
                    //-1 means empty selection
                    return radioGroup.CheckedRadioButtonId;
                }

                //When user doesn't check a radio button, show a Toast
                if (RadioGroupIsChecked(rdgconquiste) == -1 & RadioGroupIsChecked(rdgcrie) == -1 & RadioGroupIsChecked(rdgviva) == -1 & RadioGroupIsChecked(rdgentregue) == -1)
                {
                    string excecao = "Ao menos um botão deve ser selecionado e o comentário deve ser preenchido";
                    Toast.MakeText(this, excecao, ToastLength.Long).Show();
                }
                else
                {
                    String emailescolhido = spinner.SelectedItem.ToString();

                    if (emailescolhido == "Escolha um colaborador abaixo")
                    {
                        string excecao = "Por favor, escolha um colaborador";
                        Toast.MakeText(this, excecao, ToastLength.Long).Show();

                    }

                    else { 
                    String campocomentario = comentário.Text;
                        string emailchefe = "[email protected]";
                    var email = new Intent(Android.Content.Intent.ActionSend);
                    //send to
                    email.PutExtra(Android.Content.Intent.ExtraEmail,
                    new string[] { "" + emailescolhido });

                    //subject
                    email.PutExtra(Android.Content.Intent.ExtraSubject, "SABIA QUE VOCÊ FOI RECONHECIDO?");
                    //content
                    if (RadioGroupIsChecked(rdgconquiste) != -1 & RadioGroupIsChecked(rdgcrie) != -1 & RadioGroupIsChecked(rdgviva) != -1 & RadioGroupIsChecked(rdgentregue) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo1.Text + " , " + rdbgrupo2.Text + " , " + rdbgrupo3.Text + " e " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }

                        else if (RadioGroupIsChecked(rdgconquiste) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo1.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgcrie) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo2.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgviva) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo3.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgentregue) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgconquiste) != -1 & RadioGroupIsChecked(rdgcrie) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo1.Text + " , " + rdbgrupo2.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }

                        else if (RadioGroupIsChecked(rdgconquiste) != -1 & RadioGroupIsChecked(rdgentregue) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo1.Text + " , " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgcrie) != -1 & RadioGroupIsChecked(rdgviva) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo2.Text + " , " + rdbgrupo3.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgcrie) != -1 & RadioGroupIsChecked(rdgentregue) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo2.Text + " , " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgviva) != -1 & RadioGroupIsChecked(rdgentregue) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo3.Text + " , " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgconquiste) != -1 & RadioGroupIsChecked(rdgcrie) != -1 & RadioGroupIsChecked(rdgviva) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " +rdbgrupo1.Text + " , " + rdbgrupo2.Text + " e " + rdbgrupo3.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgconquiste) != -1 & RadioGroupIsChecked(rdgcrie) != -1 & RadioGroupIsChecked(rdgentregue) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo1.Text + " , " + rdbgrupo2.Text + " e " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgconquiste) != -1 & RadioGroupIsChecked(rdgviva) != -1 & RadioGroupIsChecked(rdgviva) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo1.Text + " , " + rdbgrupo3.Text + " e " + rdbgrupo3.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        else if (RadioGroupIsChecked(rdgcrie) != -1 & RadioGroupIsChecked(rdgviva) != -1 & RadioGroupIsChecked(rdgentregue) != -1)
                        {
                            email.PutExtra(Android.Content.Intent.ExtraText,
                            "Você foi reconhecido pelo(s) valor(es) de: " + rdbgrupo2.Text + " , " + rdbgrupo3.Text + " e " + rdbgrupo4.Text + "" + System.Environment.NewLine + "" + System.Environment.NewLine + campocomentario + System.Environment.NewLine);
                        }
                        email.SetType("message/rfc822");
                    StartActivity(email);
                    Android.App.AlertDialog.Builder alertdialog = new Android.App.AlertDialog.Builder(this);
                    alertdialog.SetTitle("Confirmação de envio");
                    alertdialog.SetMessage("Email enviado com sucesso");
                    alertdialog.SetNeutralButton("Ok", delegate {
                        alertdialog.Dispose();
                    });
                    alertdialog.Show();
                }
                }


            }


            catch (Java.Lang.Exception ex)
            {
                showbox(ex.Message);

            } } }

1 answer

0

Lucas does not program in the language you are using but the logic is as follows

For each rb in rbgroup
   'se foi selecionado
   if rb.value=true then
    msgbox (rb.text)
   end if
next 

Browser other questions tagged

You are not signed in. Login or sign up in order to post.