SQLiteデータベースからいくつかの値を持つスピナーがあります。アクティビティを開始したときに、アダプターのデータではなく、スピナーのタイトル「--SelectCategory--」を表示したいと思います。これどうやってするの?
String[] data = ndbHandler.getAllLabels();
adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, data);
// Drop down layout style - list view with radio button
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// attaching data adapter to spinner
spinCat.setAdapter(adapter);
これはndbHandlerデータベースクラスです
public String[] getAllLabels(){
Cursor cr=this.sDB.query(TABLE_LABELS, new String[] {KEY_NAME}, null, null, null, null, null);
if(cr.getCount() >0)
{
String[] str = new String[cr.getCount()];
int i = 0;
while (cr.moveToNext())
{
str[i] = cr.getString(cr.getColumnIndex(KEY_NAME));
i++;
}
return str;
}
else
{
return new String[]{};
}
文字列配列または配列リストの最初の場所に「カテゴリの選択」文字列を追加する必要があります。スピナーに設定する前に。
String[] SpinnerItem=new String[]{"Select Category","First","Second","Third"};
ArrayListの場合-
ArrayList<String> mArrayList=new ArrayList<String>();
mArrayList=getDataFromSqlite();// retrieve your data first.
mArrayList.add(0,"Select Category");
あなたのデータベースコード-
public ArrayList<String> getAllLabels(){
ArrayList<String> mArrayList=new ArrayList<String>();
Cursor c=this.sDB.query(TABLE_LABELS, new String[] {KEY_NAME}, null, null, null, null, null);
if(c != null){
if (c.moveToFirst()){
do{
mArrayList.add(cr.getString(cr.getColumnIndex(KEY_NAME)));
}while(c.moveToNext());
}
}
return mArrayList;
}
スピナーの設定-
ArrayList<String> data = ndbHandler.getAllLabels();
data.add(0,"Select Category");
adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, data);
// Drop down layout style - list view with radio button
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// attaching data adapter to spinner
spinCat.setAdapter(adapter);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加