Форум программистов, компьютерный форум, киберфорум
Наши страницы

SetVisibility не работает для RadioGroup - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Как подобрать цвета http://www.cyberforum.ru/android-dev/thread1794450.html
Как сделать такую гамму цветов?
Программирование Android Не удаётся создать проект в Эклипсе Не получается создать андроид в Эклипсе. При попытке создания выдаёт ошибку "Errors occurred during the build. Errors running builder 'Android Resource Manager' on project 'NewProject'.... http://www.cyberforum.ru/android-dev/thread1794351.html
Программирование Android Instagram
Всем привет, прошу прощения ,если не в тему!!! подскажет кто нибудь ресурс или программное обеспечение для продвижения акк. помощь коммерсантов не интересует,только личное изучение вопроса! за ранее...
Как отобразить в WebView сайт Программирование Android
Сабж
Программирование Android Убpать веpхний Action Bar http://www.cyberforum.ru/android-dev/thread1794227.html
Как убpать веpхний баp?!
Программирование Android Шаблон Абстрактная фабрика в Android Studio Доброго дня Пытаюсь разобраться как проектировать шаблон Абстрактная фабрика и похоже что-то идёт не так. За основу взял пример из сети с созданием классов Маг, Лучник и Воин. Решил перенести всё... подробнее

Показать сообщение отдельно
sincov95
0 / 0 / 0
Регистрация: 31.03.2015
Сообщений: 71
17.08.2016, 08:39  [ТС]
Если оставить один набор Radio Group, но отправляющий разные значения, то все работает корректно.

Добавлено через 11 часов 21 минуту
Методом тыка заметил в программе, что radiogroup все так удаляются ненужные, но только после того, как я выбрал один из вариантов. Убирается на доли секунд перед отправлением и переходом из активности.. А надо, чтобы сразу.

Добавлено через 11 минут
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
package ru.owngames.sherlok;
 
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
 
 
public class MainActivity extends AppCompatActivity {
 
 
 
    static final private int CHOOSE_THIEF = 0;
    static final private int CHOOSE_CAR = 1;
    static final private int CHOOSE_ARBUZ = 2;
    static public int idM;
 
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }
 
 
 
 
    //MENU
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
 
        int id = item.getItemId();
        TextView questText = (TextView) findViewById(R.id.textQuestion);
        TextView answerText = (TextView)findViewById(R.id.textViewInfo);
 
        //операция для пунктов выбора меню
        switch (id) {
            case R.id.action_question1:
                questText.setText("Кто украл сосиску?");
                answerText.setText("");
                idM = 1;
                return true;
 
            case R.id.action_question2:
                questText.setText("Кто купил машинку?");
                answerText.setText("");
                idM = 2;
                return true;
 
            case R.id.action_question3:
                questText.setText("Кто съел арбуз?");
                answerText.setText("");
                idM = 3;
                return true;
 
            default:
                idM = 1;
                // answerText.setText("");
                return super.onOptionsItemSelected(item);
        }
 
    }
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
 
 
 
    }
 
 
    public void onClick(View v){
 
 
        Intent questionIntent = new Intent(MainActivity.this,SecondActivity.class);
 
        if (idM == 1){
 
            startActivityForResult(questionIntent, CHOOSE_THIEF);
        }
        else if (idM == 2){
 
            startActivityForResult(questionIntent, CHOOSE_CAR);
        }
        else if(idM == 3){
 
            startActivityForResult(questionIntent, CHOOSE_ARBUZ);
        }
 
 
 
 
 
    }
 
    protected void onActivityResult(int requestCode, int resultCode, Intent data){
        super.onActivityResult(requestCode,resultCode,data);
 
        TextView infoTextView = (TextView)findViewById(R.id.textViewInfo);
 
        if(requestCode == CHOOSE_THIEF){
            if(resultCode == RESULT_OK){
                String thiefname = data.getStringExtra(SecondActivity.THIEF);
                infoTextView.setText(thiefname);
            }else{
                infoTextView.setText("");
            }
        }
 
        if(requestCode == CHOOSE_CAR){
            if(resultCode == RESULT_OK){
                String carname = data.getStringExtra(SecondActivity.CAR);
                infoTextView.setText(carname);
            }else{
                infoTextView.setText("");
            }
        }
        if(requestCode == CHOOSE_ARBUZ){
            if(resultCode == RESULT_OK){
                String arbuzname = data.getStringExtra(SecondActivity.ARBUZ);
                infoTextView.setText(arbuzname);
            }else{
                infoTextView.setText("");
            }
        }
    }
}

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
package ru.owngames.sherlok;
 
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RadioGroup;
import android.widget.TextView;
 
 
public class SecondActivity extends AppCompatActivity {
 
    public final static String THIEF = "ru.owngames.sherlok.THIEF";
    public final static String CAR = "ru.owngames.sherlok.CAR";
    public final static String ARBUZ = "ru.owngames.sherlok.ARBUZ";
 
 
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
 
 
    }
 
 
 
 
 
 
    public void onRadioClick (View v) {
 
 
        RadioGroup rp1 = (RadioGroup)findViewById(R.id.radioGroup1);
        RadioGroup rp2 = (RadioGroup)findViewById(R.id.radioGroup2);
        RadioGroup rp3 = (RadioGroup)findViewById(R.id.radioGroup3);
 
 
        Intent answerIntent = new Intent();
 
        int idM = MainActivity.idM;
        if (idM == 1) {
 
 
            rp3.setVisibility(View.GONE);
            rp2.setVisibility(View.GONE);
 
            switch (v.getId()) {
                case R.id.radioDog:
                    answerIntent.putExtra(THIEF, "Пёсик");
                    break;
                case R.id.radioCrow:
                    answerIntent.putExtra(THIEF, "Ворона");
                    break;
                case R.id.radioCat:
                    answerIntent.putExtra(THIEF, "Котик");
                    break;
 
                default:
                    break;
 
 
            }
            setResult(RESULT_OK, answerIntent);
            finish();
 
        } else if (idM == 2) {
 
 
 
            rp1.setVisibility(View.GONE);
            rp3.setVisibility(View.GONE);
            switch (v.getId()) {
                case R.id.radioSpeeder:
 
                    answerIntent.putExtra(CAR, "Кот гонщик");
                    break;
                case R.id.radioFlyer:
                    answerIntent.putExtra(CAR, "Белка летун");
                    break;
                case R.id.radioZub:
                    answerIntent.putExtra(CAR, "Зубочистка");
                    break;
 
                default:
                    break;
 
            }setResult(RESULT_OK, answerIntent);
            finish();
        } else if (idM == 3){
 
            rp1.setVisibility(View.GONE);
            rp2.setVisibility(View.GONE);
            switch (v.getId()) {
                case R.id.radioBegemot:
                    answerIntent.putExtra(ARBUZ, "Бегемот");
                    break;
                case R.id.radioRoma:
                    answerIntent.putExtra(ARBUZ, "Рома");
                    break;
                case R.id.radioRain:
                    answerIntent.putExtra(ARBUZ, "Дождь");
                    break;
 
                default:
                    break;
 
 
            }setResult(RESULT_OK, answerIntent);
            finish();
 
        }
 
 
 
    }
 
}
Добавлено через 10 часов 54 минуты
Кому интересно, всё оказалось проще некуда. Изначально ниже написанную часть кода я добавил в метод "onRadioClick" и удивлялся, почему не работало нормально))

Перенес в onCreate и заработало как надо.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 RadioGroup rp1 = (RadioGroup)findViewById(R.id.radioGroup1);
        RadioGroup rp2 = (RadioGroup)findViewById(R.id.radioGroup2);
        RadioGroup rp3 = (RadioGroup)findViewById(R.id.radioGroup3);
 
        if(idM == 1){
            rp3.setVisibility(View.GONE);
            rp2.setVisibility(View.GONE);
        }
        else if(idM == 2){
            rp1.setVisibility(View.GONE);
            rp3.setVisibility(View.GONE);
        }
        else{
            rp1.setVisibility(View.GONE);
            rp2.setVisibility(View.GONE);
        }
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru