안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요 다름이 아니라 SQLite에서 정보 로드후 SimpleCursorAdapter를 이용하여
로드한 데이터를 리스트뷰에 나열하였습니다.
문제는 리스트뷰에 나열될 항목을 선택시(클릭) 해당 값을 읽어 들여 변수에 저장하고 싶은데
잘 모르겠습니다~ ㅜ,.ㅜ
어떻게 해야할런지..
도와주세요~
======================================================================
public class MultiPage extends Activity {
ArrayAdapter<String> Adapter;
Cursor cursor;
View mPage1, mPage2, mPage3;
ProductDBHelper mHelper;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mHelper = new ProductDBHelper(this);
SQLiteDatabase db = mHelper.getWritableDatabase();
cursor = db.rawQuery("SELECT * FROM product", null);
startManagingCursor(cursor);
SimpleCursorAdapter Adapter = null;
Adapter = new SimpleCursorAdapter(this,
android.R.layout.simple_list_item_2,
cursor, new String[] { "dbname", "dbphone" },
new int[] { android.R.id.text1, android.R.id.text2});
ListView list = (ListView)findViewById(R.id.list);
list.setAdapter(Adapter);
list.setOnItemClickListener(mItemClickListener);
}
AdapterView.OnItemClickListener mItemClickListener = new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView parent, View view, int position, long id) {
String mes;
mes = "Select Item = "; // <<<<<= 여기에 리스트뷰에서 선택한 값을 넣고 싶습니다.
Toast.makeText(MultiPage.this,mes,Toast.LENGTH_SHORT).show();
}
};
}
2010.08.15 09:30:43
요기 를 한번 봐보세요.
저라면 심플커서어댑터를 안쓰고 커서로 읽어온 데이터를 합쳐서 하나의 스트링으로 만들고 , 리스트어댑터의 가장 흔한 익숙한 예제인
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,
items));
를 사용 해보겠습니다.
저라면 심플커서어댑터를 안쓰고 커서로 읽어온 데이터를 합쳐서 하나의 스트링으로 만들고 , 리스트어댑터의 가장 흔한 익숙한 예제인
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,
items));
를 사용 해보겠습니다.
간략히 답변 드립니다...
AdapterView.OnItemClickListener mItemClickListener = new AdapterView.OnItemClickListener() {
mes = "Select X,Y,Z FROM TBL_ABC WHERE item = '" + list.get(position) + "'" <--- 답변
Toast.makeText(this, list.get(position), Toast.LENGTH_SHORT).show(); <--- 답변
원하시는 답변이 되었는지 모르겠네요...