我正在创建一个有Spinner的SQLite应用程序。 Spinner包含数据库表中的值(查询占用一列)
如果数据库是空的 - 微调器显然也是空的。
我需要一个条件告诉我Spinner是否为空以进行一些验证
这是我的代码:
public class MainActivity extends AppCompatActivity {
ArrayList<String> categories;
ArrayAdapter<String> adapter;
Spinner spinner;
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);
我的点击方法条件:
...
else if(<the condition i need>) {
Toast.makeText(MainActivity.this, "No category selected", Toast.LENGTH_LONG).show();
}
...
答案 0 :(得分:2)
检查数组的大小:
if (categories == null || categories.size() == 0) {
//display your Toast
}
或者您可以使用getCount()方法:
if (adapter.getCount() == 0) {
//display your Toast
}
答案 1 :(得分:0)
您可以使用getSelectedItem()
。它将返回当前选定的项目。
If (spinner.getSelectedItem() == null)
{
//To do if nothing selected.
}