2012-03-14 12 views
1

SimplecursorAdapterを使用してSpinnerを実装しています。最初の項目として「ステーションを選択...」を追加するにはどうすればよいですか?Android「ステーションを選択...」をスピナーの最初のアイテムとして追加

SimpleCursorAdapter adapter = new SimpleCursorAdapter (this, R.layout.stnacspinner_item, cspinner, new String[] {"_id"}, new int[] {R.id.stnacspinnertext}); 
     adapter.setDropDownViewResource(R.layout.stnacspinner_item); 
     sp.setAdapter(adapter); 

答えて

1

これはたぶん、あなたはそれあなたが1つのより多くの要素を持っている事...このような何か(テストしていない思考作るためにCursorAdapterから同様にgetCount、のgetItemとgetItemIdメソッドをオーバーライドすることができ、あなたに How to insert extra elements into a SimpleCursorAdapter or Cursor for a Spinner?

+0

カーソルを使用して入力しています。 – user1143989

+0

編集した回答があなたの問題を解決することを願っています。 –

2

を助けるべきです):

+0

私はそれを試しています。 – user1143989

0
int getCount(){ 
    return super.getCount() + 1; 
} 

Object getItem(int position) { 
    if (position == 0) { 
     return "Select Station"; 
    } else { 
     return super.getItem(position - 1); 
    } 

} 

1)は、アレイ・アダプタを作成し、アダプタにそのリストを設定し、それにArrayListのと、カーソル結果の作成:

as.add(0, "select insurance"); 

Cursor cursorInsurance = this.dbH1.getReadableDatabase().query(
    "tablename", 
    new String[]{"column field..."}, 
    null, 
    null, 
    null, 
    null, 
    null); 

if(cursorInsurance!=null) { 
    if(cursorInsurance.moveToFirst()) { 
     do { 
     as.add(cursorInsurance.getString(2)); 
     } while(cursorInsurance.moveToNext()); 
    } 
} 

ArrayAdapter<String> adpInsurance=new ArrayAdapter<String>(context, android.R.layout.simple_spinner_item,as); 

adpInsurance.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
spInsurance.setAdapter(adpInsurance); 
spInsurance.setSelection(0); 

adpInsurance.notifyDataSetChanged();