2010-12-10 3 views
1

우리는 우리의 활동 중 하나에서 FrameLayout에 네 개의 ListView를 가지고 있습니다. 우리는 또한이 목록의 에 대해 EmptyView로 설정된이 Framelayout의 공통 WebView를 가지고 있습니다. 이 TextView의 내용은 다른 컨텍스트에 따라 런타임에 으로 변경됩니다.빈보기를 동적으로 설정 : 안전합니까?

은 그 결과, 우리는 전화 :
2. mListOne.setEmptyView (mEmptyView)를 호출 한 다음
1. mEmptyView.loadData (...)를.

대부분의 경우 잘 돌아갑니다. 그러나 때로 우리는 점점, IllegalStateException.

java.lang.IllegalStateException: The content of the adapter has 
changed but ListView did not receive a notification. Make sure the 
content of your adapter is not modified from a background thread, but 
only from the UI thread. [in ListView(2131362332, class 
android.widget.ListView) with Adapter(class my.own.activity.MainAct 
$UIAdapter)] 
at android.widget.ListView.layoutChildren(ListView.java:1492) 
at android.widget.AbsListView.onLayout(AbsListView.java:1147) 
at android.widget.AdapterView.updateEmptyStatus(AdapterView.java:724) 
at android.widget.AdapterView.setEmptyView(AdapterView.java:637) 

질문 : 빈 뷰의 내용을 변경하고 런타임에 의 ListView #의 setEmptyView를 호출하는 안전한가요?

답변

0

하나의 아이디어 ... ViewGroup과 addView 메소드를 사용해 보셨습니까? RelativeLayout은 뷰 그룹입니다

+0

아니요, 그렇지 않습니다. 그냥 일반 TextView를 추가하는 중입니다. – Samuh

관련 문제