안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요..
심플커서 어댑터를 개조하여 리스트뷰에 DB데이터를 띄우긴했습니다.
실시간 업데이트가 안되요..안되면 탭전환시라도 업데이트 하려고하는데 안되네요..
검색해서 삽질해도 진전이 없습니다. 도와주세요.ㅠㅡㅠ
현재 프로그램 시작시 데이터만 뿌려주는 상태입니다.
public class History extends Activity { private static final String TAG = "History"; private DBHelper mHelper; ListView list; Cursor cursor; SimpleCursorAdapter Adapter; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.history_main); list = (ListView)findViewById(R.id.list); Adapter = null; mHelper = new DBHelper(this); cursor = mHelper.call_cur(); //DB데이터 가져오기 startManagingCursor(cursor); Adapter = new SimpleCursorAdapter(this, R.layout.cus_list, cursor, new String[] { "_id", "Time", "Location", "Distance", "Temp"}, new int[] { R.id.text1, R.id.text2, R.id.text3,R.id.text4,R.id.text5}); list.setAdapter(Adapter); }
@Override public void onResume(){ super.onResume(); Log.i(TAG, "onResume()"); //list.invalidateViews(); // cursor = mHelper.call_cur(); // Adapter.notifyDataSetChanged(); //Adapter.notifyDataSetInvalidated(); //어떤 메소드들 써야하나요? 바꾸면서 해도 안되요.ㅠ.ㅠ // list.invalidate();
//해결
Adapter.getCursor().requery();
} }