2016-11-13 33 views
0

我需要在添加它所顯示的數據後不斷更新我的微調器。我的代碼
部分:使用SQLite數據庫更新微調器

public class MainActivity extends AppCompatActivity { 
ArrayAdapter<String> adapter; 
Spinner spinner; 

protected void onCreate(Bundle savedInstanceState) { 
ArrayList<String> categories = databaseHelper.getAllCategories(); 
spinner = (Spinner) findViewById(R.id.spinner); 
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, categories); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
spinner.setAdapter(adapter); 
} 

在DatabaseHelper類,我做簡單的查詢,它選擇一列。

回答

2
public class MainActivity extends AppCompatActivity { 
ArrayAdapter<String> adapter; 
Spinner spinner; 
ArrayList<String> categories; 

protected void onCreate(Bundle savedInstanceState) { 
categories = databaseHelper.getAllCategories(); 
spinner = (Spinner) findViewById(R.id.spinner); 
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, categories); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
spinner.setAdapter(adapter); 
} 

private function updateSpinner(){ 
    categories.clear(); 
    categories.addAll(databaseHelper.getAllCategories()); 
    adapter.notifyDataSetChanged(); 
} 
+0

謝謝,兄弟! :) – Mariachi

+1

你應該調用該方法嗎?而'categories.add'可以用'adapter.addAll'替代,列表作爲參數 –

+0

@Mariachi歡迎。考慮@ cricket_007評論也。而不是循環,你可以用'adapter.addAll'替換。我會更新答案,不要忘記接受答案(勾號符號)。 – mismanc