Psycop Posted March 23, 2017 at 10:21 AM Report Share #603332 Posted March 23, 2017 at 10:21 AM Olá Estou a tentar implementar um autocomplete para uma pesquisa populada por uma base de dados Sqlite. Criei um metodo para devolver um ArrayList dos dados que quero usar no autocomplete que é o seguinte: //Get Concelhos to Search Autocomplete public ArrayList<String> getListConcelhos() { ArrayList<String> listaConcelhos = new ArrayList<>(); dbase = this.getReadableDatabase(); Cursor cursor = dbase.rawQuery("SELECT DISTINCT CONCELHO FROM " + TABLE_NAME, null); //cursor.moveToFirst(); while (cursor.moveToNext()) { String value = cursor.getString( cursor.getColumnIndex("CONCELHO")); listaConcelhos.add(value); } return listaConcelhos; } E então na activity chamar usando isto: dbHelper = new DbHelper(this); listaConcelhos = dbHelper.getListConcelhos(); String[] arrayConcelhos = listaConcelhos.toArray(new String[listaConcelhos.size()]); text=(AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1); ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,arrayConcelhos); text.setAdapter(adapter); text.setThreshold(1); No entanto isto não funciona, pois ao correr o autocomplete não retorna a dropdownlist com as opções... Usei um Log para verificar se o método estaria a retornar correctamente os dados e efectivamente o Log retorna a lista de concelhos. Log.e("LOG: ", listaConcelhos.toString()); No entanto se eu usar uma string estática, o AutoCompleteTextView é populado: String[] concelhos = {"Concelho 1", "Concelho2"}; text=(AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1); ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,concelhos); text.setAdapter(adapter); text.setThreshold(1); Desta forma funciona correctamente. Alguém me pode ajudar a perceber o que estarei a fazer de mal? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now