안드로이드 개발 질문/답변
(글 수 45,052)
위도 경도를 리스트 뷰에 뿌려주기 위한 클레스입니다.
또한 위도 경도 앞에 이미지(썸네일-여러가지 이미지가 아니여도 무방함)를 출력해 줘야하는 상황입니다.
이미지는 SD카드에 있는 아무 파일 하나 혹은 아이콘 파일이여도 무방합니다.
정확하게 이해를 하지 못해서 해쉬맵에 오브젝트로 선언하고 어댑터에 icon으로 설정을 해주었는데요
어떡게해야 하는지 조언 부탁드립니다^^;;
package com.android.location1; import java.util.ArrayList; import java.util.HashMap; import com.android.location1.R.drawable; import android.app.Activity; import android.database.Cursor; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.util.Log; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.SimpleAdapter; public class TodoList { public BaseAdapter Adapter = null; ArrayList<HashMap<String, Object>> _DataSource = new ArrayList<HashMap<String, Object>>(); private static final String ID = "ID"; private static final String ICON = "ICON"; private SQLiteDatabase _DB = null; int i = 0; private Cursor _Cursor; static private Activity _Activity = null; static int flag = 0; public TodoList(Activity AActivity) { super(); _Activity = AActivity; _DB = _Activity.openOrCreateDatabase("SI", _Activity.MODE_PRIVATE, null); Log.e("", "111111"); Log.e("", "---in"); _DB.execSQL("Create Table IF NOT EXISTS TodoList (latlng varchar)"); flag = 1; Log.e("", "flag=" + flag); Log.e("", "222222"); Adapter = new SimpleAdapter(_Activity, _DataSource, android.R.layout.activity_list_item, new String[] {ID, ICON}, new int[] { android.R.id.text1, android.R.id.icon }); Log.e("", "333333"); Refresh(); // runSimpleAdapter(); } public void Refresh() { _Cursor = _DB.rawQuery("Select * from TodoList", null); Log.e("", "8 888888888"); if(_Cursor.moveToFirst()) { do { // Object id = _DataSource.get( R.drawable.icon ); // ImageView thumbnail =(ImageView)row.findViewById(R.id.icon); HashMap<String, Object> _Item =new HashMap< String, Object >(); _Item.put("ID",_Cursor.getString(0).toString()); // _Item.put(ICON, id); _DataSource.add(_Item); }while(_Cursor.moveToNext()); } Adapter.notifyDataSetChanged(); public void Append(String latlng) { Log.e("", "77777777" + " " + latlng); _DB.execSQL("Insert into TodoList values('" + latlng + "')"); Adapter.notifyDataSetChanged(); } }