设置LayoutManager
和Adapter
mLayoutManager = new WrapContentLinearLayoutManager(getContext());
mLayoutManager.setStackFromEnd(true);
recyclerView.setLayoutManager(mLayoutManager);
recyclerView.setAdapter(mAdapter);
添加项目
private void addItem(LiveChatData data) {
if (mAdapter != null && mAdapter.getItems() != null) {
Message message = new Message();
message.what = HANDLER_REFRESH_LIST_ADD_CONTENT;
message.obj = data;
chatMessageHandler.sendMessage(message);
}
}
HANDLER_REFRESH_LIST_ADD_CONTENT
进行中
public void addItem(LiveChatData item) {
if (item == null) return;
try {
mItems.add(item);
notifyContentItemInserted(mItems.size() - 1);
} catch (Exception e) {
LogUtils.w(TAG, e.toString());
}
}
通常有效。有时onCreateViewHolder
不打电话,所以RecyclerView
为空。
但是,以拖放方式查看即可正常运行。
我的RecyclerView XML
树是
Coordinatorlayout / LinearLayout(BottomSheet)/ RelativeLayout / Recyclerview
视图树是
MainActivity / Fragment / FragmentPager / Fragment
为什么有时不打onCreateViewHoler
?