Выберите идентификатор RadioGroup и действуйте по нему, нажимая кнопку - PullRequest
0 голосов
/ 14 февраля 2019

Я просто пытаюсь заставить эту страницу отправить меня на другую страницу, в зависимости от того, в каком поле вы отметите галочкой.

Должен быть найден идентификатор флажка.Затем, исходя из идентификатора, он должен перейти на новую страницу.Однако, когда я нажимаю кнопку, ничего не работает.Я пытался решить эту проблему всю ночь.

RadioGroup radiogroup;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sporgsmaltype);

    radiogroup = findViewById(R.id.radioGroup);

    Button button2 = findViewById(R.id.button2);
    button2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            int radioid = radiogroup.getCheckedRadioButtonId();
            if(radioid == 0) {
                openbought();
            }
            else if(radioid == 1) {
                openbought();
            }
            else if(radioid == 2) {
                openbought();
            }
        }


    });

}


        public void openservice() {
            Intent intentservice = new Intent(this, sporgsmal1.class);
            startActivity(intentservice);
        }
        public void openrepair() {
                Intent intentrepair = new Intent(this, sporgsmal1.class);
                startActivity(intentrepair);
            }

        public void openbought() {
            Intent intentbought = new Intent(this, detaljerMain.class);
            startActivity(intentbought);
        }

}

Ответы [ 4 ]

0 голосов
/ 15 февраля 2019

Спасибо, теперь это работает с помощью radiogroup.getCheckedRadioButtonId ()

0 голосов
/ 14 февраля 2019

Необходимо проверить

radiogroup.getCheckedRadioButtonId ()

радио с идентификатором радиокнопки, не имеющим 0/1/2, потому что это не идентификатор радиокнопки.Вы можете попробовать это

RadioGroup radiogroup;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sporgsmaltype);

radiogroup = findViewById(R.id.radioGroup);

Button button2 = findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        int radioid = radiogroup.getCheckedRadioButtonId();
        if(radioid == findViewById(R.id.YOUR_RADIO_BUTTON).getId()) {
            openbought();
        }
        else if(radioid == findViewById(R.id.YOUR_SECOND_RADIO_BUTTON).getId()) {
            openbought();
        }
        else if(radioid == findViewById(R.id.YOUR_THIRD_RADIO_BUTTON).getId()) {
            openbought();
        }
    }


});

}


    public void openservice() {
        Intent intentservice = new Intent(this, sporgsmal1.class);
        startActivity(intentservice);
    }
    public void openrepair() {
            Intent intentrepair = new Intent(this, sporgsmal1.class);
            startActivity(intentrepair);
        }

    public void openbought() {
        Intent intentbought = new Intent(this, detaljerMain.class);
        startActivity(intentbought);
    }
}
0 голосов
/ 14 февраля 2019
RadioGroup radiogroup;
RadioButton serviceRadioButton,repairRadioButton,boughtRadioButton;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sporgsmaltype);

    radiogroup = findViewById(R.id.radioGroup);
    serviceRadioButton = radiogroup.findViewById(R.id.service_id);
    repairRadioButton = radiogroup.findViewById(R.id.repair_id);
    boughtRadioButton = radiogroup.findViewById(R.id.bought_id);

    Button button2 = findViewById(R.id.button2);
    button2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            int radioid = radiogroup.getCheckedRadioButtonId();
            if(radioid == R.id.service_id) {
                openservice(serviceRadioButton);
            }
            else if(radioid == R.id.repair_id) {
                openrepair(repairRadioButton);
            }
            else if(radioid == R.id.bought_id) {
                openbought(boughtRadioButton);
            }
        }


    });

}


        public void openservice() {
            Intent intentservice = new Intent(this, sporgsmal1.class);
            startActivity(intentservice);
        }
        public void openrepair() {
                Intent intentrepair = new Intent(this, sporgsmal1.class);
                startActivity(intentrepair);
            }

        public void openbought() {
            Intent intentbought = new Intent(this, detaljerMain.class);
            startActivity(intentbought);
        }
}
0 голосов
/ 14 февраля 2019

Попробуйте вот так

RadioGroup radiogroup;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sporgsmaltype);

    radiogroup = findViewById(R.id.radioGroup);

    Button button2 = findViewById( R.id.button2);
    button2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            int radioid = radiogroup.getCheckedRadioButtonId();
            if(radioid ==  R.id.service_id) {
                openbought(v);
            }
            else if(radioid == R.id.repair_id) {
                openbought(v);
            }
            else if(radioid == R.id.bought_id) {
                openbought(v);
            }
        }

    });

}


public void openservice(View view) {
    Intent intentservice = new Intent( view.getContext(), sporgsmal1.class);
    startActivity(intentservice);
}
public void openrepair(View view) {
    Intent intentrepair = new Intent(view.getContext(), sporgsmal1.class);
    startActivity(intentrepair);
}

public void openbought(View view) {
    Intent intentbought = new Intent(view.getContext(), detaljerMain.class);
    startActivity(intentbought);
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...