0

ListView의 마지막 뷰가 표시되면 AsyncTask를 호출하는 onScrollListener가 있습니다. AsyncTask는 ArrayAdapter를 사용하여 ListView에 데이터를 추가합니다. 문제는 내가 arrayAdapter.clear()으로 ArrayAdapter를 지울 때 어댑터가 지워지지만 AbsListView의 모든 변수가 항목이 존재한다고 생각하여 ListView의 맨 아래에있을 때 검색하지 못하는 경우입니다. 여기에 onScrollListener가 있습니다.OnScroll (AbsListView) 지우는 법 - Android

class EndlessScrollListener implements OnScrollListener { 
       private int visibleThreshold = 5; 
       private boolean loading = true; 

       public EndlessScrollListener() { 
       } 
       public EndlessScrollListener(int visibleThreshold) { 
        this.visibleThreshold = visibleThreshold; 
       } 

       @Override 
       public void onScroll(AbsListView view, int firstVisibleItem, 
         int visibleItemCount, int totalItemCount) { 


        if (loading) { 
         if (totalItemCount > previousTotal) { 
          loading = false; 
          previousTotal = totalItemCount; 
         } 
       } 
        if (!loading && (firstVisibleItem + visibleItemCount) == totalItemCount) { 

         new loadComments().execute(); 
         loading = true; 
        } 




       } 

       @Override 
       public void onScrollStateChanged(AbsListView view, int scrollState) { 
       } 
      } 

어떻게 목록보기의 하단에 도달 한 경우는 이해 때문에 나는 또한 AbsListView의 변수를 재설정 할 수 있습니까?

답변

0

당신의 Adapterclear()를 호출 한 후에 adapter.notifyDataSetChanged()를 호출해야합니다.

공공 무효 notifyDataSetChanged()

는 기본 데이터가 변경된 데이터 세트를 반영하는 어떤보기 자체를 새로해야한다는 부착 관찰자에게 통지 다음은 API의 조각입니다.

+0

나는 그에게 전화 할과 같은 일을한다. –

+0

흠, 질문에 넣어야합니다. AsyncTask가하는 일을 볼 수 없습니다. – tolgap