2012-04-02 3 views
0

나는 간단한 XMPP 클라이언트를 안드로이드에 작성하고 있으며, 좋은 헬퍼 모듈에 대한 모든 XMPP 호출을 추출했습니다. 이 모듈은 들어오는 모든 XMPP 메시지를 SQLite 데이터베이스에 씁니다.SQLiteChange에 대한 업데이트보기

앱이 사용자의보기를 열면 SQLite db의 최신 메시지 사본을 손쉽게 가져옵니다 (쉬운 정도).

그러나 사용자가 "ListView"를보고있는 동안 XMPP 메시지가 나타나면 어쨌든 뷰를 업데이트하라는 메시지를 트리 아래로 버블 링합니까?

XMPP 클라이언트가 도움이된다면 XMPP 클라이언트는 응용 프로그램 컨텍스트에서 실행됩니다.

답변

1

관찰자 패턴을 잘 구현 한 ContentProviderContentObserver을 사용하십시오. 이는 정확히 필요한 것입니다. ListView에에 컨텐츠를 제공하는 어댑터도 실질적으로, 당신이 당신 자신의 컨텐트 프로

+0

을 처리 할 수 ​​있습니까 콘텐츠를 설정 제공자/관찰자가 비공개가되어야합니다. 즉,이 앱에서만 사용할 수 있습니까? –

+0

기본적으로 ContentProvider는 개인용 – smith324

0

사용 listview.notifyDataSetChanged()를 구현해야합니다 관찰 측의 모든 처리하고 목록보기 나머지 :

+0

입니다. 미안합니다. 명확하게 설명하지 않았을 수 있습니다. 문제가 하나의 항목을 업데이트하지 않고, 다른 클래스에서 현재 볼 수있는 목록보기를 찾으려고합니다. 세트가 변경되었습니다. –

관련 문제