2011-12-16 3 views
1

저는 여기에 새로운 것이므로 어리석은 질문처럼 보이면 저와 함께하시기 바랍니다. 현재 선택한 ListItem의 id를 검색하기 위해 onListItemClick을 사용하고 있습니다. int 위치와 long id 인수의 차이에 대해서는 상당히 혼란 스럽습니다. 동일합니까? 누군가 친절하게 설명해 주시겠습니까? 미리 감사드립니다. 간단한 onListItemClick() 인수

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 
    Cursor c = ((SimpleCursorAdapter)l.getAdapter()).getCursor(); 
    c.moveToPosition(position); 
    int _id = (int)c.getLong(0); 
    //int _id = (int) id; 
    String word_id = Integer.toString(_id); 

    Toast.makeText(this, word_id, Toast.LENGTH_SHORT).show(); 
} 

내가 대신 위의 방법을 간단하게 버튼을 사용할 계획했지만, 난이 작업에 대한 목록보기 검색하는 방법을 몰랐다.

+0

위치는 ListView의보기 위치입니다 (첫 번째 항목의 위치는 0 임). id는 위치의 데이터 행을 식별하는 것입니다. id는 예를 들어 데이터베이스에있는 행의 행 ID 일 수 있습니다. 이를 통해이 위치에 어떤 정보가 있는지 확인할 수 있습니다. –

답변

3
l The ListView where the click happened 
v The view that was clicked within the ListView 
position The position of the view in the list 
id The row id of the item that was clicked 
+0

그래서 DB에서 임의의 항목을 인쇄하고 위치 대신 ID를 사용해야하는 특정 행을 검색하려고하면 어떻게됩니까? 고맙습니다! –

+0

위치를 사용해야합니다. 위치는 목록에서 클릭 한 항목을 제공합니다. 0에서 총 커서 수까지의 가치를 제공합니다. Poistion 매개 변수가 제공하는 위치에서 커서의 값을 가져와야합니다. –

+0

쿨! 고맙습니다! –

관련 문제