2014-11-02 2 views
0

SQLite 데이터베이스와 SimpleCursorAdapter를 사용하여 데이터베이스를 매핑하는 ListView가있는 응용 프로그램이 있습니다. TextWatcher를 사용하여 바코드 스캐너로 문자열을 읽었습니다. 이제 ListView에서 스캔 한 문자열을 찾아서 관련 행을 맨 위에 넣고 싶습니다. 그러므로 나는 그 행의 위치가 필요하다고 생각합니다. ListView에서 스캔 한 문자열의 위치를 ​​얻으려면 어떻게해야합니까? 또는이를 관리 할 다른 방법이 있습니까?OnItemClickListener를 사용하지 않고 ListView에서 행의 위치를 ​​얻는 방법

+0

어댑터에서 할 수 있습니다. –

답변

0
//mAdapter is your listview adapter 
public int getRowInListView(String barcodedString){ 
    for(int i = 0; i < mAdapter.getCount(); i++){ 
     String s = mAdapter.getItem(i).toString(); 
     //if you have a custom object in you adapter instead use this 
     String s = ((MyObject)mAdapter.getItem(i)).getBarcode(); 

     if(s.equals(barcodedString)) 
      return i; 
    } 

    return -1 
} 
+0

그게 전부입니다. 감사! – Schnicke

관련 문제