/** * 直接操作数据后的全局刷新方法 * 该方法只支持item的改变,同{@link #setData(int, MultiTypeEntity)} * 注意点:如果notifyModule调用过快,Adapter将不会即时更新,可调用{@link #notifyDataChanged(MultiTypeEntity)}解决此问题 * 标记为过时,请直接调用{@link RecyclerView.Adapter#notifyDataSetChanged()} */ @Deprecated public void notifyDataChanged() { checkAdapterBind(); if (!mIsCanRefresh) { return; } mCurrentLevel = REFRESH_TYPE_DATA_ALL; onStart(); mAdapter.notifyItemRangeChanged(getPreDataCount(), mData.size()); onEnd(); }
int removePostion = positionStart + getPreDataCount(); mAdapter.notifyItemRangeRemoved(removePostion, handleData.size()); mAdapter.notifyItemRangeChanged(removePostion, mData.size() - removePostion); attrsEntity.isFolded = true; } else {
mAdapter.notifyItemRangeChanged(removePostion, mData.size() - removePostion); if (mCurrentMode == MODE_STANDARD) { final int level = getListLevel(removeData);
int internalPosition = position + getPreDataCount(); mAdapter.notifyItemRemoved(internalPosition); mAdapter.notifyItemRangeChanged(internalPosition, mData.size() - internalPosition);
RecyclerView.Adapter bindAdapter = helper.getBindAdapter(); bindAdapter.notifyItemRangeRemoved(positionDataStart, dataSize); bindAdapter.notifyItemRangeChanged(positionDataStart, helperData.size() - positionDataStart); bindAdapter.notifyItemRangeInserted(positionDataStart, mData.size()); if (intersectant(mHeader, header)) {
mAdapter.notifyItemRangeChanged(positionStart + getPreDataCount(), count); onEnd();
public void clearChoices() { if (checkedItemCount > 0) { final int start = checkStates.keyAt(0); final int end = checkStates.keyAt(checkStates.size() - 1); checkStates.clear(); if (checkedIdStates != null) { checkedIdStates.clear(); } checkedItemCount = 0; adapter.notifyItemRangeChanged(start, end - start + 1, SELECTION_PAYLOAD); if (choiceActionMode != null) { choiceActionMode.finish(); } } }
@Override public void onItemRangeChanged(int positionStart, int itemCount) { adapter.notifyItemRangeChanged(positionStart, itemCount); }
@Override public void notify(RecyclerView.Adapter adapter) { adapter.notifyItemRangeChanged(positionStart, itemCount); } }
@Override public void onChanged(int position, int count, Object payload) { adapter.notifyItemRangeChanged(position + preDataCount, count, payload); } };