Android基礎--ListView的刷新

ListView的刷新

全局刷新

一、修改數據源
二、adapter.notifyDataSetChanged()

修改數據源必須在UI線程操作,修改完必須調用notifyDataSetChanged,負責會發生異常

局部刷新

ListView中某個item的內容被修改,只需要找到該item進行刷新即可

private void partialRefresh(ListView listView,int position){
        if (position >= listView.getFirstVisiblePosition() && position <= listView.getLastVisiblePosition()){//先判斷該item是否在屏幕上
            int childIndex = position - listView.getFirstVisiblePosition();//獲取到屏幕上的位置
            View child = listView.getChildAt(childIndex);//拿到item的view
            if (child.getTag() instanceof MyBaseAdapter.ViewHolderText){
                ((MyBaseAdapter.ViewHolderText) child.getTag()).refreshContent((messageList.get(position).getContent()));//修改item的內容
            }
        }
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章