2011-07-29 16 views
0

私はspinner.iで選択した特定の名前のIDを取得したいと思っていますが、 "_id"が表示されます。特定のIDのIDを取得するにはどうすればいいですか?IDをスピナーでどのように取得できますか?

public void onItemSelected(AdapterView<?> arg0, View arg1, 
    int arg2, long arg3) {   
    String sel_name,numbers;    
    //String[] name=new String[]{arg0.getItemAtPosition(arg2).toString()}; 


    sel_name=arg0.getItemAtPosition(arg2).toString(); 
    String[] p=new String[]{People._ID}; 
    Cursor cur=getContentResolver().query(People.CONTENT_URI, p,People.NAME+"= '"+sel_name+"'" ,null , null); 
    String r=cur.getString(cur.getColumnIndex(People._ID)); 
    Toast.makeText(arg0.getContext(),r, Toast.LENGTH_LONG).show(); 
} 

答えて

0

カーソル.moveToFirst()を追加する必要があります。カーソルを使用する前に呼び出します。

+0

回答ありがとうございますが、答えが得られませんでした.iすべての名前をspinner.ifに保存しました。私はsel_nameに格納されているスピナーから任意の名前を選択しました。事前に感謝 – Arpit

0

あなたがsel_nameする参照のうえされている場合、これはあなたがビューのIDを取得するために何をすべきかです:

sel_name = String.valueOf(arg0.getChildAt(arg2).getId()); 
+0

返信ありがとうが、私は答えを得ていない。私はすべての名前をspinner.ifに保存しています。私はsel_nameのストアであるスピナーから任意の名前を選択します。ありがとうございます。 – Arpit

0

あなたが意味する場合perticular名前のIDでカーソル

while(cur.moveToNext) 
{ 
    String r=cur.getString(cur.getColumnIndex(People._ID)); 
} 
+0

返信ありがとうございますが、答えが得られませんでした.iすべての名前をspinner.ifに保存しました。私はsel_nameに格納されているスピナーから任意の名前を選択します。事前に感謝 – Arpit

+0

私はあなたが2.0 apiの背面を使用していると思います。よくこれを試して、特定の連絡先のIDを見つけてください。 'Cursor cur = getContentResolver()。query(People.CONTENT_URI、People.Data._ID、People.NAME +" = '"+ sel_name +"' "、null、null); \tしばらく(cur.moveToNext) \t { \t \t \t \t \t \t \t cursor.getString(cursor.getColumnIndex(People.Data._ID)) \t \t} ' –

0

後に以下を追加します。そうすることを避けてください。 alw aysは、Rファイルにはintエントリしか持たないため、intとして扱うだけで簡単に扱えます。

はこのために私は........

を仕事やスピナーのcustomAdapterのGETビューでsetTag(id)をしようとしますonItemSelected arg1.getId()で推測し、onItemSelectedのint型のIDで= arg1.getTag();

+0

返事に感謝しかし、私は答えが得られませんでした.iすべての名前をspinner.ifに保存します。私はsel_nameに格納されているスピナーから任意の名前を選択します。その特定のnameの_idが必要です。事前に感謝 – Arpit

+0

申し訳ありません......私は女の子だけに....そのレベルまで助けています....配列の店舗名を離れて......今すぐonItemSelected(AdapterView 、arg1、int arg2、 long arg3)int arg2は選択した位置です。 Stringのようにmyname = nameArray [arg2]; –

関連する問題