質問編集履歴

3

logcatを掲載。文字数制限のため一部省略。

2016/01/10 18:34

投稿

Wassermann
Wassermann

スコア18

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  ###前提
2
2
 
3
- Androidアプリの開発勉強として、eclipseで以下の流れになるタイピングゲームを作成しています。
3
+ Androidアプリの勉強として、eclipseで以下のタイピングゲームを作成しています。
4
4
 
5
5
 
6
6
 
@@ -16,7 +16,7 @@
16
16
 
17
17
 
18
18
 
19
- ###発生している問題・エラーメッセージ
19
+ ###エラー
20
20
 
21
21
  「2」で、正誤に関わらず5問全てのCLEARが 0→1 に変更されてしまいます。
22
22
 
@@ -38,530 +38,602 @@
38
38
 
39
39
 
40
40
 
41
-
41
+ <インポート文は省略>
42
+
43
+
44
+
45
+ public class Test extends Activity implements OnClickListener {
46
+
47
+
48
+
49
+ Button buttonToNextQuestions;
50
+
51
+ Button buttonTrueOrFalse;
52
+
53
+ Cursor c;
54
+
55
+ EditText edited;
56
+
57
+ int clear;
58
+
59
+ int ret;
60
+
61
+ int questionID;
62
+
63
+ String questionID2;
64
+
65
+ String mondai;
66
+
67
+ String kotae;
68
+
69
+ String sql;
70
+
71
+ String answer;
72
+
73
+ String TAG = "TTT_clear";
74
+
75
+ TextView tv1;
76
+
77
+ TextView tv2;
78
+
79
+ TextView tv3;
80
+
81
+ Questions questions;
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+ protected void onCreate(Bundle savedInstanceState) {
90
+
91
+ super.onCreate(savedInstanceState);
92
+
93
+ setContentView(R.layout.activity_first_year_term1);
94
+
95
+
96
+
97
+ Log.d(TAG,"0 : onCreate");
98
+
99
+
100
+
101
+ QuestionsTable(this);
102
+
103
+ tv1 = (TextView)findViewById(R.id.textView1);
104
+
105
+ tv2 = (TextView)findViewById(R.id.textView2);
106
+
107
+ tv3 = (TextView)findViewById(R.id.textView3);
108
+
109
+ buttonToNextQuestions = (Button)findViewById(R.id.button10);
110
+
111
+ buttonToNextQuestions.setOnClickListener(this);
112
+
113
+
114
+
115
+ Log.d(TAG,"2 : onCreate");
116
+
117
+ }
118
+
119
+
120
+
121
+
122
+
123
+ /************************************
124
+
125
+ * 問 題 を 表 示 さ せ る 処 理 *
126
+
127
+ ************************************/
128
+
129
+ public void QuestionsTable (Test test) {
130
+
131
+
132
+
133
+ questions = new Questions(this);
134
+
135
+ SQLiteDatabase db = questions.getReadableDatabase();
136
+
137
+
138
+
139
+ // CLEARの値を取得して clearFlagに入れる処理
140
+
141
+ sql = "SELECT CLEAR FROM QuestionsTable";
142
+
143
+
144
+
145
+ c = db.rawQuery(sql,null);
146
+
147
+ c.moveToFirst();
148
+
149
+
150
+
151
+ clear = c.getInt(c.getColumnIndex("CLEAR"));
152
+
153
+ Log.d(TAG,Integer.toString(clear));
154
+
155
+
156
+
157
+ int[] clearFlag = new int[c.getCount()];
158
+
159
+
160
+
161
+ // ここで問題の数だけ入れる
162
+
163
+ for (int i = 1; i < c.getCount(); i++) {
164
+
165
+ clearFlag[0] = c.getInt(0);
166
+
167
+ c.moveToNext();
168
+
169
+ Log.d(TAG,Integer.toString(clear));
170
+
171
+ }
172
+
173
+
174
+
175
+ if (clear == 0){
176
+
177
+ // CLEARが0の問題だけを選んで画面に出力する
178
+
179
+ sql = "SELECT KANJI,KOTAE,CLEAR,QuestionID FROM QuestionsTable WHERE (CLEAR = 0) AND KANJIno = KOTAEno ORDER BY random() limit 1";
180
+
181
+ c = db.rawQuery(sql.toString(),null);
182
+
183
+ c.moveToFirst();
184
+
185
+
186
+
187
+ mondai = c.getString(c.getColumnIndex("KANJI"));
188
+
189
+ kotae = c.getString(c.getColumnIndex("KOTAE"));
190
+
191
+
192
+
193
+ // 実際に出題した問題のQuestionIDを取得
194
+
195
+ questionID = c.getInt(c.getColumnIndex("QuestionID"));
196
+
197
+
198
+
199
+ edited = (EditText)findViewById(R.id.editText1);
200
+
201
+ tv1 = (TextView)findViewById(R.id.textView1);
202
+
203
+
204
+
205
+ tv1.setText(mondai);
206
+
207
+
208
+
209
+ }else if (clear <=1){
210
+
211
+ tv1.setText("nothing");
212
+
213
+ }
214
+
215
+ }
216
+
217
+
218
+
219
+
220
+
221
+ /************************************
222
+
223
+ * 入 力 さ れ た 文 字 を 取 得 *
224
+
225
+ ************************************/
226
+
227
+ public String message() {
228
+
229
+ edited.getText();
230
+
231
+ SpannableStringBuilder sb = (SpannableStringBuilder)edited.getText();
232
+
233
+ answer = sb.toString();
234
+
235
+ Log.d(TAG,"3 : message");
236
+
237
+ return answer;
238
+
239
+ }
240
+
241
+
242
+
243
+
244
+
245
+ /**************************************
246
+
247
+ * 正 誤 判 定 *
248
+
249
+ **************************************/
250
+
251
+ public void TrueOrFalse() {
252
+
253
+ answer = message();
254
+
255
+ if (answer.equals(kotae)){
256
+
257
+ Toast.makeText(this, "正解", Toast.LENGTH_SHORT).show();
258
+
259
+ Log.d(TAG,"4-1 : TrueOrFalse seikai");
260
+
261
+
262
+
263
+ }else{
264
+
265
+ Toast.makeText(this, "残念", Toast.LENGTH_SHORT).show();
266
+
267
+ Log.d(TAG,"4-2 : TrueOrFalse zannen");
268
+
269
+ }
270
+
271
+ changeValueOfClear();
272
+
273
+ }
274
+
275
+
276
+
277
+
278
+
279
+ /****************************************
280
+
281
+ * 「次の問題へ」ボタンが押されたときの処理 *
282
+
283
+ ****************************************/
284
+
285
+ public void onClick (View v) {
286
+
287
+
288
+
289
+ TrueOrFalse();
290
+
291
+
292
+
293
+ edited.getText().clear();
294
+
295
+ edited = (EditText)findViewById(R.id.editText1);
296
+
297
+ QuestionsTable(this);
298
+
299
+
300
+
301
+ Log.d(TAG,"5 : onClick");
302
+
303
+ }
304
+
305
+
306
+
307
+
308
+
309
+ /************************************
310
+
311
+ * DBのCLEARの値を変更する処理 *
312
+
313
+ ************************************/
314
+
315
+ public void changeValueOfClear() {
316
+
317
+
318
+
319
+ Questions questions = new Questions(this);
320
+
321
+ SQLiteDatabase db = questions.getWritableDatabase();
322
+
323
+
324
+
325
+ c = db.rawQuery(sql.toString(),null);
326
+
327
+ c.moveToFirst();
328
+
329
+
330
+
331
+ ContentValues values = new ContentValues();
332
+
333
+ values.put("CLEAR",1);
334
+
335
+
336
+
337
+ Log.d("TTTQuestionID_2",Integer.toString(questionID));
338
+
339
+ Log.d("TTTERROR","change1");
340
+
341
+
342
+
343
+ try{
344
+
345
+ ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{String.valueOf(questionID)});
346
+
347
+ }finally{
348
+
349
+ c.close();
350
+
351
+ db.close();
352
+
353
+ }
354
+
355
+
356
+
357
+ Log.d("TTTERROR","change2");
358
+
359
+ // 値の変更に失敗
360
+
361
+ if (ret == -1) {
362
+
363
+ Toast.makeText(this, "終了です", Toast.LENGTH_SHORT).show();
364
+
365
+ }else{
366
+
367
+
368
+
369
+ }
370
+
371
+ Log.d("TTTERROR","change3");
372
+
373
+
374
+
375
+ }
376
+
377
+ }
378
+
379
+
380
+
381
+ ```
382
+
383
+
384
+
385
+
386
+
387
+ ★SQLiteのテーブル
388
+
389
+ ```SQLite
42
390
 
43
391
  package com.at.kanji;
44
392
 
45
393
 
46
394
 
47
- import android.app.Activity;
48
-
49
- import android.content.ContentValues;
50
-
51
- import android.database.Cursor;
52
-
53
- import android.database.sqlite.SQLiteDatabase;
54
-
55
- import android.os.Bundle;
56
-
57
- import android.text.SpannableStringBuilder;
58
-
59
- import android.util.Log;
60
-
61
- import android.view.View;
62
-
63
- import android.view.View.OnClickListener;
64
-
65
- import android.widget.Button;
66
-
67
- import android.widget.EditText;
68
-
69
- import android.widget.TextView;
70
-
71
- import android.widget.Toast;
72
-
73
-
74
-
75
- public class Test extends Activity implements OnClickListener {
76
-
77
-
78
-
79
- Button buttonToNextQuestions;
80
-
81
- Button buttonTrueOrFalse;
82
-
83
- Cursor c;
84
-
85
- EditText edited;
86
-
87
- int clear;
88
-
89
- int ret;
90
-
91
- int questionID;
92
-
93
- String questionID2;
94
-
95
- String mondai;
96
-
97
- String kotae;
98
-
99
- String sql;
100
-
101
- String answer;
102
-
103
- String TAG = "TTT_clear";
104
-
105
- TextView tv1;
106
-
107
- TextView tv2;
108
-
109
- TextView tv3;
110
-
111
- Questions questions;
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
- protected void onCreate(Bundle savedInstanceState) {
120
-
121
- super.onCreate(savedInstanceState);
122
-
123
- setContentView(R.layout.activity_first_year_term1);
124
-
125
-
126
-
127
- Log.d(TAG,"0 : onCreate");
128
-
129
-
130
-
131
- QuestionsTable(this);
132
-
133
- tv1 = (TextView)findViewById(R.id.textView1);
134
-
135
- tv2 = (TextView)findViewById(R.id.textView2);
136
-
137
- tv3 = (TextView)findViewById(R.id.textView3);
138
-
139
- buttonToNextQuestions = (Button)findViewById(R.id.button10);
140
-
141
- buttonToNextQuestions.setOnClickListener(this);
142
-
143
- // buttonTrueOrFalse = (Button)findViewById(R.id.button11);
144
-
145
-
146
-
147
- Log.d(TAG,"2 : onCreate");
148
-
149
- }
150
-
151
-
152
-
153
-
154
-
155
- /************************************
156
-
157
- * 問 題 を 表 示 さ せ る 処 理 *
158
-
159
- ************************************/
160
-
161
- public void QuestionsTable (Test test) {
162
-
163
-
164
-
165
- questions = new Questions(this);
166
-
167
- SQLiteDatabase db = questions.getReadableDatabase();
168
-
169
-
170
-
171
- // CLEARの値を取得して clearFlagに入れる処理
172
-
173
- sql = "SELECT CLEAR FROM QuestionsTable";
174
-
175
-
176
-
177
- c = db.rawQuery(sql,null);
178
-
179
- c.moveToFirst();
180
-
181
-
182
-
183
- clear = c.getInt(c.getColumnIndex("CLEAR"));
184
-
185
- Log.d(TAG,Integer.toString(clear));
186
-
187
-
188
-
189
- int[] clearFlag = new int[c.getCount()];
190
-
191
-
192
-
193
- // ここで問題の数だけ入れる
194
-
195
- for (int i = 1; i < c.getCount(); i++) {
196
-
197
- clearFlag[0] = c.getInt(0);
198
-
199
- c.moveToNext();
200
-
201
- Log.d(TAG,Integer.toString(clear));
202
-
203
- }
204
-
205
-
206
-
207
- if (clear == 0){
208
-
209
- // CLEARが0の問題だけを選んで画面に出力する
210
-
211
- sql = "SELECT KANJI,KOTAE,CLEAR,QuestionID FROM QuestionsTable WHERE (CLEAR = 0) AND KANJIno = KOTAEno ORDER BY random() limit 1";
212
-
213
- //sql = "SELECT KANJI,KOTAE,_id FROM QuestionsTable WHERE (CLEAR = 0) AND KANJIno = KOTAEno";
214
-
215
- c = db.rawQuery(sql.toString(),null);
216
-
217
- c.moveToFirst();
218
-
219
-
220
-
221
- mondai = c.getString(c.getColumnIndex("KANJI"));
222
-
223
- kotae = c.getString(c.getColumnIndex("KOTAE"));
224
-
225
-
226
-
227
- // ★★★ここで全ての問題のQuestionIDを取得しているのがNGです・・・。
228
-
229
- // 実際に出題した問題のQuestionIDだけを取得したいです。
230
-
231
- questionID = c.getInt(c.getColumnIndex("QuestionID"));
232
-
233
-
234
-
235
- edited = (EditText)findViewById(R.id.editText1);
236
-
237
- tv1 = (TextView)findViewById(R.id.textView1);
238
-
239
-
240
-
241
- tv1.setText(mondai);
242
-
243
-
244
-
245
- }else if (clear <=1){
246
-
247
- tv1.setText("nothing");
248
-
249
- }
250
-
251
- }
252
-
253
-
254
-
255
-
256
-
257
- /************************************
258
-
259
- * 入 力 さ れ た 文 字 を 取 得 *
260
-
261
- ************************************/
262
-
263
- public String message() {
264
-
265
- edited.getText();
266
-
267
- SpannableStringBuilder sb = (SpannableStringBuilder)edited.getText();
268
-
269
- answer = sb.toString();
270
-
271
- Log.d(TAG,"3 : message");
272
-
273
- return answer;
274
-
275
- }
276
-
277
-
278
-
279
-
280
-
281
- /**************************************
282
-
283
- * 正 誤 判 定 *
284
-
285
- **************************************/
286
-
287
- public void TrueOrFalse() {
288
-
289
- answer = message();
290
-
291
- if (answer.equals(kotae)){
292
-
293
- Toast.makeText(this, "正解", Toast.LENGTH_SHORT).show();
294
-
295
- Log.d(TAG,"4-1 : TrueOrFalse seikai");
296
-
297
-
298
-
299
- }else{
300
-
301
- Toast.makeText(this, "残念", Toast.LENGTH_SHORT).show();
302
-
303
- Log.d(TAG,"4-2 : TrueOrFalse zannen");
304
-
305
- }
306
-
307
- changeValueOfClear();
308
-
309
- }
310
-
311
-
312
-
313
-
314
-
315
- /****************************************
316
-
317
- * 「次の問題へ」ボタンが押されたときの処理 *
318
-
319
- ****************************************/
320
-
321
- public void onClick (View v) {
322
-
323
-
324
-
325
- TrueOrFalse();
326
-
327
-
328
-
329
- edited.getText().clear();
330
-
331
- edited = (EditText)findViewById(R.id.editText1);
332
-
333
- QuestionsTable(this);
334
-
335
-
336
-
337
- Log.d(TAG,"5 : onClick");
338
-
339
- }
340
-
341
-
342
-
343
-
344
-
345
- /************************************
346
-
347
- * DBのCLEARの値を変更する処理 *
348
-
349
- * ★★★で全てのQuestionIDを取得しているため、
350
-
351
- * 全てのclearが変更されてしまうようです。
352
-
353
- ************************************/
354
-
355
- public void changeValueOfClear() {
356
-
357
-
358
-
359
- Questions questions = new Questions(this);
360
-
361
- SQLiteDatabase db = questions.getWritableDatabase();
362
-
363
-
364
-
365
- c = db.rawQuery(sql.toString(),null);
366
-
367
- c.moveToFirst();
368
-
369
-
370
-
371
- ContentValues values = new ContentValues();
372
-
373
- values.put("CLEAR",1);
374
-
375
-
376
-
377
- //String QQ = Integer.toString(questionID);
378
-
379
- Log.d("TTTQuestionID_2",Integer.toString(questionID));
380
-
381
- Log.d("TTTERROR","change1");
382
-
383
-
384
-
385
- try{
386
-
387
- //ret = db.update("QuestionsTable",values,"_id =" + questionID,null);
388
-
389
- //ret = db.update("QuestionsTable",values,"questionID",null);
390
-
391
- ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{String.valueOf(questionID)});
392
-
393
- //ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{"questionID2"});
394
-
395
- //ret = db.update("QuestionsTable",values,"QuestionID = '2'", null);
396
-
397
-
398
-
399
- //ret = db.update("QuestionsTable",values,"QuestionID = " + questionID,null);
400
-
401
- //ret = db.update("QuestionsTable",values,"QuestionID = " + QQ,null);
402
-
403
- //ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{QQ});
404
-
405
- //ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{"QQ"});
406
-
407
- //ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{"questionID"});
408
-
409
- //ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{questionID});
410
-
411
- //ret = db.update("QuestionsTable",values,"QuestionID = ?", new String[]{"" +questionID});
412
-
413
-
414
-
415
- }finally{
416
-
417
- c.close();
418
-
419
- db.close();
420
-
421
- }
422
-
423
-
424
-
425
- Log.d("TTTERROR","change2");
426
-
427
- // CLEARの値の変更に失敗
428
-
429
- if (ret == -1) {
430
-
431
- Toast.makeText(this, "終了です", Toast.LENGTH_SHORT).show();
432
-
433
- }else{
434
-
435
-
436
-
437
- }
438
-
439
- Log.d("TTTERROR","change3");
440
-
441
- //return changeValueOfClear();
442
-
443
-
444
-
445
-
446
-
447
- }
448
-
449
- }
395
+ import文は省略>
396
+
397
+
398
+
399
+ public class Questions extends SQLiteOpenHelper{
400
+
401
+
402
+
403
+ public Questions(Context context) {
404
+
405
+ /*データベースファイル名 = QuestionsTable.db
406
+
407
+ * バージョン = 1
408
+
409
+ */
410
+
411
+
412
+
413
+ super(context,"QuestionsTable.db",null,1);
414
+
415
+
416
+
417
+ }
418
+
419
+
420
+
421
+ @Override
422
+
423
+ public void onCreate(SQLiteDatabase db) {
424
+
425
+
426
+
427
+ db.execSQL("CREATE TABLE QuestionsTable" +
428
+
429
+ "(" +
430
+
431
+ "_id INTEGER PRIMARY KEY AUTOINCREMENT" +
432
+
433
+ ", QuestionID INTEGER" +
434
+
435
+ ", KANJI TEXT" +
436
+
437
+ ", KOTAE TEXT" +
438
+
439
+ ", KANJIno INTEGER" +
440
+
441
+ ", KOTAEno INTEGER" +
442
+
443
+ ", CLEAR INTEGER" +
444
+
445
+ ")");
446
+
447
+
448
+
449
+ // 初期データ投入
450
+
451
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (1,'山','やま',1,1,0);");
452
+
453
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (2,'川','かわ',2,2,0);");
454
+
455
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (3,'木','き',3,3,0);");
456
+
457
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (4,'林','はやし',4,4,0);");
458
+
459
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (5,'森','もり',5,5,0);");
460
+
461
+ }
462
+
463
+
464
+
465
+ @Override
466
+
467
+ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
468
+
469
+
470
+
471
+ }
472
+
473
+ }
450
474
 
451
475
 
452
476
 
453
477
  ```
454
478
 
455
-
456
-
457
- SQLiteのテーブル
458
-
459
- ```SQLite
460
-
461
- package com.at.kanji;
462
-
463
-
464
-
465
- import android.app.Activity;
466
-
467
- import android.content.Context;
468
-
469
- import android.database.sqlite.SQLiteDatabase;
470
-
471
- import android.database.sqlite.SQLiteOpenHelper;
472
-
473
- import android.os.Bundle;
474
-
475
- import android.view.Menu;
476
-
477
- import android.view.MenuItem;
478
-
479
-
480
-
481
- public class Questions extends SQLiteOpenHelper{
482
-
483
-
484
-
485
- public Questions(Context context) {
486
-
487
- /* ここで任意のデータベースファイル名と、バージョンを指定する。
488
-
489
- * データベースファイル名 QuestionsTable.db
490
-
491
- * バージョン 1
492
-
493
- */
494
-
495
-
496
-
497
- super(context,"QuestionsTable.db",null,1);
498
-
499
-
500
-
501
- }
502
-
503
-
504
-
505
- @Override
506
-
507
- public void onCreate(SQLiteDatabase db) {
508
-
509
-
510
-
511
- db.execSQL("CREATE TABLE QuestionsTable" +
512
-
513
- "(" +
514
-
515
- "_id INTEGER PRIMARY KEY AUTOINCREMENT" +
516
-
517
- ", QuestionID INTEGER" +
518
-
519
- ", KANJI TEXT" +
520
-
521
- ", KOTAE TEXT" +
522
-
523
- ", KANJIno INTEGER" +
524
-
525
- ", KOTAEno INTEGER" +
526
-
527
- ", CLEAR INTEGER" +
528
-
529
- ")");
530
-
531
-
532
-
533
- // 初期データ投入
534
-
535
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (1,'山','やま',1,1,0);");
536
-
537
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (2,'川','かわ',2,2,0);");
538
-
539
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (3,'木','き',3,3,0);");
540
-
541
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (4,'林','はやし',4,4,0);");
542
-
543
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (5,'森','もり',5,5,0);");
544
-
545
- }
546
-
547
-
548
-
549
- @Override
550
-
551
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
552
-
553
-
554
-
555
- }
556
-
557
- }
558
-
559
-
479
+
480
+
481
+ logcat
482
+
483
+ ```text
484
+
485
+
486
+
487
+ ★1問目の正誤判定ー正解
488
+
489
+ 02:10:13.150 23449 23449 D TTT_clear: 4-1 : TrueOrFalse seikai
490
+
491
+
492
+
493
+ ★再度QuestionIDを取得(出題した問題のQuestionIDになっているか)
494
+
495
+ 02:10:13.160 23449 23449 D TTTQuestionID_2: 3
496
+
497
+
498
+
499
+ ★★★CLEARの値が変更されない
500
+
501
+ 02:10:13.160 23449 23449 D TTTERROR: change1
502
+
503
+ 02:10:13.170 23449 23449 D TTTERROR: change2
504
+
505
+ 02:10:13.170 23449 23449 D TTTERROR: change3
506
+
507
+ 02:10:13.180 23449 23449 D TTT_clear: 0
508
+
509
+ 02:10:13.180 23449 23449 D TTT_clear: 0
510
+
511
+ 02:10:13.180 23449 23449 D TTT_clear: 0
512
+
513
+ 02:10:13.180 23449 23449 D TTT_clear: 0
514
+
515
+ 02:10:13.180 23449 23449 D TTT_clear: 0
516
+
517
+
518
+
519
+ ★次の問題のQuestionIDを取得
520
+
521
+ 02:10:13.180 23449 23449 D TTTQuestionID:: 4
522
+
523
+ 02:10:13.180 23449 23449 D TTT_clear: 5 : onClick
524
+
525
+ 02:10:14.301 14774 23545 I QCNEA : |NIMS| getaddrinfo: hostname android.clients.google.com servname NULL numeric 0 appname
526
+
527
+ 02:10:14.321 18526 18526 D Finsky : [1] AppStatesReplicator.handleContentSyncResponse: Completed 2 account content syncs with 0 successful.
528
+
529
+ 02:10:14.321 18526 18526 D Finsky : [1] ContentSyncService$5.onFinished: Installation state replication failed.
530
+
531
+ 02:10:14.321 18526 18526 D Finsky : [1] ContentSyncService$5.onFinished: Scheduling replication attempt 1.
532
+
533
+ 02:10:19.426 15312 15312 E SpannableStringBuilder: SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
534
+
535
+
536
+
537
+ ★入力された文字列を取得
538
+
539
+ 02:10:20.797 23449 23449 D TTT_clear: 3 : message
540
+
541
+
542
+
543
+ ★正誤判定ー正解
544
+
545
+ 02:10:20.817 23449 23449 D TTT_clear: 4-1 : TrueOrFalse seikai
546
+
547
+
548
+
549
+ ★QuestionIDを再度取得
550
+
551
+ 02:10:20.827 23449 23449 D TTTQuestionID_2: 4
552
+
553
+
554
+
555
+ ★★★CLEARが変更されず
556
+
557
+ 02:10:20.827 23449 23449 D TTTERROR: change1
558
+
559
+ 02:10:20.837 23449 23449 D TTTERROR: change2
560
+
561
+ 02:10:20.837 23449 23449 D TTTERROR: change3
562
+
563
+ 02:10:20.857 23449 23449 D TTT_clear: 0
564
+
565
+ 02:10:20.857 23449 23449 D TTT_clear: 0
566
+
567
+ 02:10:20.857 23449 23449 D TTT_clear: 0
568
+
569
+ 02:10:20.857 23449 23449 D TTT_clear: 0
570
+
571
+ 02:10:20.857 23449 23449 D TTT_clear: 0
572
+
573
+
574
+
575
+ ★次の問題のQuestionIDを取得
576
+
577
+ 02:10:20.857 23449 23449 D TTTQuestionID:: 0
578
+
579
+ 02:10:20.857 23449 23449 D TTT_clear: 5 : onClick
580
+
581
+ 02:10:31.257 15006 15414 V BgRingerService: bgRingerCancel call pkg:com.antivirus id:19
582
+
583
+ 02:10:31.838 15006 15088 E sharp-HapticFeedbackManager: For given effectId:1, we can not find corresponding soundEffectId from AudioManager.
584
+
585
+ 02:10:31.918 15312 15312 E SpannableStringBuilder: SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
586
+
587
+
588
+
589
+ ★入力された文字列を取得
590
+
591
+ 02:10:32.799 23449 23449 D TTT_clear: 3 : message
592
+
593
+
594
+
595
+ ★正誤判定
596
+
597
+ 02:10:32.809 23449 23449 D TTT_clear: 4-1 : TrueOrFalse seikai
598
+
599
+
600
+
601
+ ★QuestionIDを再度取得
602
+
603
+ 02:10:32.819 23449 23449 D TTTQuestionID_2: 0
604
+
605
+
606
+
607
+ ★★★全てのQuestionIDが「1」に変更される
608
+
609
+ 02:10:32.819 23449 23449 D TTTERROR: change1
610
+
611
+ 02:10:32.829 23449 23449 D TTTERROR: change2
612
+
613
+ 02:10:32.829 23449 23449 D TTTERROR: change3
614
+
615
+ 02:10:32.849 23449 23449 D TTT_clear: 1
616
+
617
+ 02:10:32.849 23449 23449 D TTT_clear: 1
618
+
619
+ 02:10:32.849 23449 23449 D TTT_clear: 1
620
+
621
+ 02:10:32.849 23449 23449 D TTT_clear: 1
622
+
623
+ 02:10:32.849 23449 23449 D TTT_clear: 1
624
+
625
+
626
+
627
+ ★ 出題できる問題が無いため画面には「nothing」を表示した
628
+
629
+ 02:10:32.849 23449 23449 D TTT_clear: 5 : onClick
630
+
631
+
560
632
 
561
633
  ```
562
634
 
563
-
564
-
635
+
636
+
565
- ###補足情報(言語/FW/ツール等のバージョンなど)
637
+ ###補足
566
638
 
567
639
  Android4.4向け

2

SQLiteテーブルのQuestionIDが全部0になっていたので、1からの連番に変更しました。

2016/01/10 18:34

投稿

Wassermann
Wassermann

スコア18

test CHANGED
File without changes
test CHANGED
@@ -532,15 +532,15 @@
532
532
 
533
533
  // 初期データ投入
534
534
 
535
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (0,'山','やま',1,1,0);");
535
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (1,'山','やま',1,1,0);");
536
-
536
+
537
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (0,'川','かわ',2,2,0);");
537
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (2,'川','かわ',2,2,0);");
538
-
538
+
539
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (0,'木','き',3,3,0);");
539
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (3,'木','き',3,3,0);");
540
-
540
+
541
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (0,'林','はやし',4,4,0);");
541
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (4,'林','はやし',4,4,0);");
542
-
542
+
543
- db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (0,'森','もり',5,5,0);");
543
+ db.execSQL("INSERT INTO QuestionsTable(QuestionID,KANJI,KOTAE,KANJIno,KOTAEno,CLEAR) values (5,'森','もり',5,5,0);");
544
544
 
545
545
  }
546
546
 

1

脱字を修正しました

2016/01/10 08:59

投稿

Wassermann
Wassermann

スコア18

test CHANGED
File without changes
test CHANGED
@@ -224,7 +224,7 @@
224
224
 
225
225
 
226
226
 
227
- // ★ここで全ての問題のQuestionIDを取得しているのがNGです・・・。
227
+ // ★★★ここで全ての問題のQuestionIDを取得しているのがNGです・・・。
228
228
 
229
229
  // 実際に出題した問題のQuestionIDだけを取得したいです。
230
230