2017-06-21 10 views
-1

の以下の部分を入れたときにこれが私のコードで開けないアンドロイドスタジオの活動は、私は、コード

E/AndroidRuntime: FATAL EXCEPTION: main Process: com.appsoft23.bestmathtrainerforkids.free, PID: 3095 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.appsoft23.bestmathtrainerforkids.free/com.appsoft23.bestmathtrainerforkids.free.Add}: java.lang.IndexOutOfBoundsException: Index: 4, Size: 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707) at android.app.ActivityThread.-wrap12(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6077) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) Caused by: java.lang.IndexOutOfBoundsException: Index: 4, Size: 4 at java.util.ArrayList.get(ArrayList.java:411) at com.appsoft23.bestmathtrainerforkids.free.Add.onCreate(Add.java:53) at android.app.Activity.performCreate(Activity.java:6664) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2599) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)  at android.app.ActivityThread.-wrap12(ActivityThread.java)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)  at android.os.Handler.dispatchMessage(Handler.java:102)  at android.os.Looper.loop(Looper.java:154)  at android.app.ActivityThread.main(ActivityThread.java:6077)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) 

あなたの配列:)感謝

答えて

1

を助けてくださいリストはIndexOutOfBoundsExceptionを返す。 arraylistは4要素のみを握り、あなたは5位置からそれを呼び出しました。それを変更し :

button4.setText(Integer.toString(answers.get(0))); 
    button5.setText(Integer.toString(answers.get(1))); 
    button6.setText(Integer.toString(answers.get(2))); 
    button7.setText(Integer.toString(answers.get(3))); 
+0

をインデックス4,5,6,7-

を使用してのArrayListからテキストを設定されているボタンの

、:) –

+0

Npのを補正するためのありがとう:)私の答えを受け入れてください。 –

0

それはtrows例外あなたの配列のサイズは4であり、あなたがあなたの配列に存在しない、その位置からデータを取得しようとするため この

button4.setText(Integer.toString(answers.get(0))); 
button5.setText(Integer.toString(answers.get(1))); 
button6.setText(Integer.toString(answers.get(2))); 
button7.setText(Integer.toString(answers.get(3))); 
0

を試してみてください、あなたが追加していますforループを使ってarraylistに4回。サイズは4でインデックスは0,1,2,3になります。あなたはので、私は間違いを犯したexpection

関連する問題