水平マネージャーに2つのボタンフィールドを追加しましたが、別のスレッドのマネージャーから同じものを削除しようとすると、-インデックスの範囲外の例外が発生します。
これが私がしたことの例です-
hfm.add(button1);
hfm.add(button2);
layout.add(hfm);
// on clicking button it starts a different thread which
// tries to delete the two buttonFields from the manager.
fieldChanged(Field field1,int arg1) {
if(field1==button1) {
populateUI();//This function starts a new Thread
}
}
populateUI() {
//...............//
run() {
//...............//
hfm.deleteAll();//this line gives an exception whereas
//on applying debug it shows field count as 2
}
}
では、フィールドが含まれていてもエラーが表示されるのはなぜですか?残りはすべて正常に機能しています。
個別に削除してみました...
hfm.delete(0);
hfm.delete(1);
しかし、それでも同じエラー-範囲外のインデックス例外