У меня проблема с ArrayList. Я объявляю ArrayList внутри класса. Я заполняю его внутри метода OnCreate. На OnCreate метода я вызов функции и внутри этой функции я доступ к ArrayList, но это пустое .... Это starnge:Видимость ArrayList внутри функции
public class List_themeActivity extends Activity{
String[] array ;
ArrayList <String>bdd_checked = new ArrayList<String>();
private SQLiteDatabase bdd;
private ListView listView_listebase;
ListView msgList;
ArrayList<MessageDetails> details;
AdapterView.AdapterContextMenuInfo info;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list_theme);
List<String> bdd_checked = readList (this, "animal");
initDB("LSPCC4.db");
[...]
}
}
protected void initDB(String BD_NAME){
int lg_bdd_checked=0;
lg_bdd_checked=this.bdd_checked.size();
}
Кто-то может мне помочь? thx
Редактировать: Извините, ArrayList пуст iniDB().
Благодаря maqjav, проблема решена, я сделал это:
До:
List<String> bdd_checked = readList (this, "animal");
После:
bdd_checked = (ArrayList<String>) readList (this, "animal");
и я уже отлиты из-за ReadList ():
общедоступный статический список ListList (контекст контекста, префикс строки) { SharedPreferences prefs = context.getSharedPreferences ("YourApp", Context.MODE_PRIVATE);
int size = prefs.getInt(prefix+"_size", 0);
List<String> data = new ArrayList<String>(size);
for(int i=0; i<size; i++)
data.add(prefs.getString(prefix+"_"+i, null));
return data;
}
Где это пусто? В 'initDB()'? И покажите нам код метода readList() '. –
Вы проверили, возвращает ли readList правильные значения? – blganesh101