Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
NukaWorld
0 / 0 / 0
Регистрация: 17.03.2018
Сообщений: 31
1

При открытии activity приложение некорректно завершает работу

29.05.2018, 15:30. Просмотров 292. Ответов 2
Метки нет (Все метки)

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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
package com.example.tictactoe;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
 
import java.util.Random;
 
public class Main2Activity extends Activity {
    private Button b1 = (Button) findViewById(R.id.b1);
    private Button b2 = (Button) findViewById(R.id.b2);
    private Button b3=(Button) findViewById(R.id.b3);
    private Button b4=(Button) findViewById(R.id.b4);
    private Button b5=(Button) findViewById(R.id.b5);
    private Button b6=(Button) findViewById(R.id.b6);
    private Button b7=(Button) findViewById(R.id.b7);
    private Button b8=(Button) findViewById(R.id.b8);
    private Button b9=(Button) findViewById(R.id.b9);
    public int count=0;
    public int intB1 = 0;
    public int intB2 = 0;
    public int intB3 = 0;
    public int intB4 = 0;
    public int intB5 = 0;
    public int intB6 = 0;
    public int intB7 = 0;
    public int intB8 = 0;
    public int intB9 = 0;
    public boolean shot = true;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        Listener2();
    }
 
    public void Listener2() {
        b1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB1 == 0 && shot == true) {
                    b1.setText("X");
                    intB1 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB2 == 0 &&  shot == true) {
                    b2.setText("X");
                    intB2 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB3 == 0 &&  shot == true) {
                    b3.setText("X");
                    intB3 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB4 == 0 &&  shot == true) {
                    b4.setText("X");
                    intB4 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB5 == 0 &&  shot == true) {
                    b5.setText("X");
                    intB5 = 1;
                    shot= false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
                
            }
        });
        b6.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB6 == 0 &&  shot == true) {
                    b6.setText("X");
                    intB6 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                }
                count++;
            }
        });
        b7.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB7 == 0 &&  shot == true) {
                    b7.setText("X");
                    intB7 = 1;
                    shot= false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b8.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB8 == 0 &&  shot == true) {
                    b8.setText("X");
                    intB8 = 1;
                    shot= false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b9.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB9 == 0 &&  shot == true) {
                    b9.setText("X");
                    intB9 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
    }
 
    class Computer1 {
         Computer1(){
             int shoot1;
             while(shot!=true){
                 shoot1= new Random(1).nextInt();
                 switch (shoot1) {
                     case 1:
                         if(intB1==0&&shot==false){
                             b1.setText("O");
                             intB1=1;
                             shot=true;
                         }
                         break;
                     case 2:
                         if(intB2==0&&shot==false){
                             b2.setText("O");
                             shot=true;
                         }
                         break;
                     case 3:
                         if(intB3==0&&shot==false){
                             b3.setText("O");
                             intB3=1;
                             shot=true;
                         }
                         break;
                     case 4:
                         if(intB4==0&&shot==false){
                             b4.setText("O");
                             shot=true;
                         }
                         break;
                     case 5:
                         if(intB5==0&&shot==false){
                             b5.setText("O");
                             shot=true;
                         }
                         break;
                     case 6:
                         if(intB6==0&&shot==false){
                             b6.setText("O");
                             shot=true;
                         }
                         break;
                     case 7:
                         if(intB7==0&&shot==false){
                             b7.setText("O");
                             shot=true;
                         }
                         break;
                     case 8:
                         if(intB8==0&&shot==false){
                             b8.setText("O");
                             shot=true;
                         }
                         break;
                     case 9:
                         if(intB9==0&&shot==false){
                             b9.setText("O");
                             shot=true;
                         }
                         break;
                 }
             }
         }
        }
    }
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2018, 15:30
Ответы с готовыми решениями:

Ошибка при открытии новой activity
Здравствуйте, уважаемые программисты. У меня возник вопрос: пишу приложение под Android, которое ,...

Navigation drawer activity: немного тормозит при открытии шторки
Тормозит когда доходит до item иконок(.png) | загружаю из drawble, их 8 шт. Просто не так плавно...

При открытии программы узнать данные, которые хранятся в второй форме Activity, не переходя на неё
Как на Android Studio передать информацию? Нужны при открытии программы узнать данные которые...

Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity
У меня в параллельном потоке происходит куча apply() Решение использовать apply вместо commit было...

Необходимо закрыть приложение (ACTIVITY) при отсутствии интернета
Необходимо закрыть приложение (ACTIVITY) при отсутствии интернета - можно добавить alert на пару...

2
Pablito
2862 / 2274 / 768
Регистрация: 12.05.2014
Сообщений: 7,978
Завершенные тесты: 1
29.05.2018, 15:52 2
лог ошибки где?
0
NukaWorld
0 / 0 / 0
Регистрация: 17.03.2018
Сообщений: 31
29.05.2018, 16:08  [ТС] 3
Лог ошибок нет.

Добавлено через 4 минуты
Проблема поменялась:
Ошибку я нашел. Теперь непонятно: почему класс Computer1 осуществляет свой ход всего 1 раз?)

Добавлено через 1 минуту
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
package com.example.tictactoe;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
 
import java.util.Random;
 
public class Main2Activity extends Activity {
    private static Button b1;
    private static Button b2;
    private static Button b3;
    private static Button b4;
    private static Button b5;
    private static Button b6;
    private static Button b7;
    private static Button b8;
    private static Button b9;
    public static int count=0;
    public static int intB1 = 0;
    public static int intB2 = 0;
    public static int intB3 = 0;
    public static int intB4 = 0;
    public static int intB5 = 0;
    public static int intB6 = 0;
    public static int intB7 = 0;
    public static int intB8 = 0;
    public static int intB9 = 0;
    public static boolean shot = true;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        Listener2();
 
    }
 
    public void Listener2() {
        b1=(Button) findViewById(R.id.b1);
        b2=(Button) findViewById(R.id.b2);
        b3=(Button) findViewById(R.id.b3);
        b4=(Button) findViewById(R.id.b4);
        b5=(Button) findViewById(R.id.b5);
        b6=(Button) findViewById(R.id.b6);
        b7=(Button) findViewById(R.id.b7);
        b8=(Button) findViewById(R.id.b8);
        b9=(Button) findViewById(R.id.b9);
        b1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB1 == 0 && shot == true&&b1.getText().equals("")) {
                    b1.setText("X");
                    intB1 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    shot=true;
                    count++;
                }
            }
        });
        b2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB2 == 0 &&  shot == true) {
                    b2.setText("X");
                    intB2 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    shot=true;
                    count++;
                }
            }
        });
        b3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB3 == 0 &&  shot == true) {
                    b3.setText("X");
                    intB3 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB4 == 0 &&  shot == true) {
                    b4.setText("X");
                    intB4 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB5 == 0 &&  shot == true) {
                    b5.setText("X");
                    intB5 = 1;
                    shot= false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
 
            }
        });
        b6.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB6 == 0 &&  shot == true) {
                    b6.setText("X");
                    intB6 = 1;
                    shot = false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
 
            }
        });
        b7.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB7 == 0 &&  shot == true) {
                    b7.setText("X");
                    intB7 = 1;
                    shot= false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b8.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB8 == 0 &&  shot == true) {
                    b8.setText("X");
                    intB8 = 1;
                    shot= false;
                    if(count<5) {
                        new Computer1();
                    }
                    count++;
                }
            }
        });
        b9.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (intB9 == 0 &&  shot == true) {
                    b9.setText("X");
                    intB9 = 1;
                    shot = false;
                    if(count<5){
                        new Computer1();
                    }
                    count++;
                }
            }
        });
    }
 
    static class Computer1 {
         Computer1() {
             Random shoot = new Random(1);
             int shoot1 = 1;
             if (count < 5) {
                 while (shot != true) {
                     shoot1 = shoot.nextInt(9);
                     switch (shoot1) {
                         case 1:
                             if (intB1 == 0 && shot == false) {
                                 b1.setText("O");
                                 intB1 = 1;
                                 shot = true;
                             }
                             break;
                         case 2:
                             if (intB2 == 0 && shot == false) {
                                 b2.setText("O");
                                 shot = true;
                             }
                             break;
                         case 3:
                             if (intB3 == 0 && shot == false) {
                                 b3.setText("O");
                                 intB3 = 1;
                                 shot = true;
                             }
                             break;
                         case 4:
                             if (intB4 == 0 && shot == false) {
                                 b4.setText("O");
                                 shot = true;
                             }
                             break;
                         case 5:
                             if (intB5 == 0 && shot == false) {
                                 b5.setText("O");
                                 shot = true;
                             }
                             break;
                         case 6:
                             if (intB6 == 0 && shot == false) {
                                 b6.setText("O");
                                 shot = true;
                             }
                             break;
                         case 7:
                             if (intB7 == 0 && shot == false) {
                                 b7.setText("O");
                                 shot = true;
                             }
                             break;
                         case 8:
                             if (intB8 == 0 && shot == false) {
                                 b8.setText("O");
                                 shot = true;
                             }
                             break;
                         case 9:
                             if (intB9 == 0 && shot == false) {
                                 b9.setText("O");
                                 shot = true;
                             }
                             break;
                     }
                 }
             }
         }
        }
    }
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2018, 16:08

Некорректно работает поток в Activity
Что неправильно в данном коде? Когда я начинаю вводить текст в EditText, приложение зависает. Думаю...

При открытии SQL базы из SecondActivity приложение крашится
Ткните в ошибку пожалуйста,не могу разобраться что не так... MainActivity : public class...

Как открыть Activity по открытии ссылки?
Допустим, у нас есть WebView, как открывать Activity при открытии определенной ссылки? Например,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.