Есть ли способ скрыть фрагменты или идентификаторы при запуске приложения?

#android

#Android

Вопрос:

Я делаю программу, в которой пользователь выбирает опцию с помощью переключателя, и отображается количество фрагментов. ПРИМЕР: если они выбирают 2, то появляются два цветных фрагмента

Я попытался ввести идентификаторы в качестве переменной, а затем оператор if

 RadioButton rb1 = ( RadioButton ) findViewById(R.id.radio_one);
        RadioButton rb2 = ( RadioButton ) findViewById(R.id.radio_two);
        LinearLayout GS = ( LinearLayout ) findViewById(R.id.game_state);
        LinearLayout GR = (LinearLayout ) findViewById(R.id.game_result);
        radioButton = findViewById(radioId);
            if (rb1.isChecked())
                GS.bringToFront();
            else if (rb2.isChecked())
                GR.bringToFront();
 

Но я не думаю, что BringToFront() — правильный метод для использования

Ответ №1:

Метод BringToFront() наследуется от класса View Android и работает другим способом: BringToFront

измените порядок z представления в дереве, чтобы оно было поверх других родственных представлений. Это изменение порядка может повлиять на макет, если родительский контейнер использует схему компоновки, зависящую от порядка (например, LinearLayout)

подумайте, есть ли у вас textView1 и textView2 в вашем LinearLayout, и что вы можете сделать с помощью BringToFront()

профессиональный разработчик сделал бы то, что вы хотите сделать, с фрагментами, или может быть framelayout, но вы также можете попробовать этот setVisibilaty()

 RadioButton rb1 = ( RadioButton ) findViewById(R.id.radio_one);
    RadioButton rb2 = ( RadioButton ) findViewById(R.id.radio_two);
    LinearLayout GS = ( LinearLayout ) findViewById(R.id.game_state);
    LinearLayout GR = (LinearLayout ) findViewById(R.id.game_result);
    radioButton = findViewById(radioId);
        if (rb1.isChecked()){
            GS.setVisibility(0);
            GR.setVisibility(2)}
        else if (rb2.isChecked()){
           GS.setVisibility(2);
            GR.setVisibility(0);
 }