Как я могу получить идентификатор по имени в счетчике? - PullRequest
0 голосов
/ 29 июля 2011

Я хочу получить идентификатор конкретного имени, которое я выбрал в spinner.i мне это понравилось, но он выведет «_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();
}

Ответы [ 4 ]

0 голосов
/ 29 июля 2011

по идентификатору перкулярного имени, если вы имеете в виду строку den, избегайте этого.Мы всегда используем id только как int, потому что R-файл имеет только записи int, поэтому с ним будет легко работать.

для этого, я думаю, в onItemSelected arg1.getId () будет работать ........

или попробуйте setTag (id) в представлении getAd custom адаптера счетчика, затем в onItemSelected int id = arg1.getTag ();

0 голосов
/ 29 июля 2011

Если вы ссылаетесь на sel_name, то это то, что вы должны сделать, чтобы получить идентификатор представления:

sel_name = String.valueOf(arg0.getChildAt(arg2).getId());
0 голосов
/ 29 июля 2011

добавить следующий после курсора

while(cur.moveToNext)
{
   String r=cur.getString(cur.getColumnIndex(People._ID));
}
0 голосов
/ 29 июля 2011

Вам необходимо добавить курсор.moveToFirst ();вызовите, прежде чем использовать курсор.

...