안드로이드 개발 질문/답변
(글 수 45,052)
Adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2, cursor, new String[] {"Message","nick"}, new int[] {android.R.id.text1,android.R.id.text2}); list.setAdapter(Adapter); list.setChoiceMode(ListView.CHOICE_MODE_SINGLE); //list view 선택 list.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, int position, long id) { String str = cursor.getString(2); String IP = "통신할 IP = " + str; _Draw.Ip_change(str); Toast.makeText(IP_set.this,IP,Toast.LENGTH_SHORT).show();
위에는 중요소스만 보기 쉽게 올린것입니다.
요점은 DB에 있는 내용을 ListView에 뿌려주고 해당 ListView를 클릭하면
해당 DB필드에 있는 IP값이 선택이되고 통신할 IP = 192.168.1.153 이런식으로 토스트로 떠야하는데
list.setChoiceMode(ListView.CHOICE_MODE_SINGLE); 구문을 써주지 않으면 클릭한 DB의 해당 IP값을 불러와
토스트로 잘 뿌려주지만 써주게 되면 맨처음위치만 DB의 IP값만 계속 불러옵니다.
문제가 뭘까요? list.setChoiceMode(ListView.CHOICE_MODE_SINGLE)는 Array구조에서만 사용한건가요?
2010.10.14 13:13:42
되는거같은데 이상하게 옆에 선택하면 동그래미 생기는게 없어져서
왜없어졌나 찾고 있습니다 동그래미있는 상태에서 제대로 IP불러와지면 글 올릴게요
답변 감사드립니다 '_'
2010.10.14 13:31:09
한 리스트뷰에 DB의 두필드를 보여줘야 해서 android.R.layout.simple_list_item_2 를 선택해준거거든요
한줄에 두 DB를 표현할수 있는 방법이 있다면 그 방법을 사용하고 싶거든요
2010.10.14 13:35:28
제가 물어보는 말에 대한 대답이 애메하네요...
한줄 출력하신(동그라미가 있는) 경우와
두줄 출력하신 경우가
한줄 출력하신(동그라미가 있는) 경우와
두줄 출력하신 경우가
android.R.layout.simple_list_item_2를 동일하게 쓰는지 여쭤봤는데요...
제가 생각하기로 아마 다른걸 쓰셨을겁니다.
한줄짜리는 동그라미가 애초에 있는 레이아웃이고
2줄짜리는 동그라미가 없는 레이아웃입니다.
만약 두줄에 동그라미가 필요하시면 직접 레이아웃을 만들어 쓰셔야 합니다.
제가 생각하기로 아마 다른걸 쓰셨을겁니다.
한줄짜리는 동그라미가 애초에 있는 레이아웃이고
2줄짜리는 동그라미가 없는 레이아웃입니다.
만약 두줄에 동그라미가 필요하시면 직접 레이아웃을 만들어 쓰셔야 합니다.
2010.10.14 13:39:05
아 한줄짜리는 android.R.layout.simple_list_item_1을 사용하고
list.setChoiceMode(ListView.CHOICE_MODE_SINGLE) 해주었습니다.
두줄짜리는 동일하지만 android.R.layout.simple_list_item_2를 사용하였구요
직접 레이아웃을 만들어야 되는군요.. 아니면 한줄에 DB데이터 두개를 표현하는 방법없을까요?
list.setChoiceMode(ListView.CHOICE_MODE_SINGLE) 해주었습니다.
두줄짜리는 동일하지만 android.R.layout.simple_list_item_2를 사용하였구요
직접 레이아웃을 만들어야 되는군요.. 아니면 한줄에 DB데이터 두개를 표현하는 방법없을까요?
아이피를 불러보세요