diff --git a/app/src/main/java/com/huanchengfly/tieba/post/adapters/RecyclerThreadAdapter.java b/app/src/main/java/com/huanchengfly/tieba/post/adapters/RecyclerThreadAdapter.java index f634de78..83c099cb 100644 --- a/app/src/main/java/com/huanchengfly/tieba/post/adapters/RecyclerThreadAdapter.java +++ b/app/src/main/java/com/huanchengfly/tieba/post/adapters/RecyclerThreadAdapter.java @@ -79,6 +79,7 @@ public class RecyclerThreadAdapter extends MultiBaseAdapter userInfoBeanMap; private NavigationHelper navigationHelper; private LinearLayout.LayoutParams defaultLayoutParams; @@ -344,14 +345,15 @@ public class RecyclerThreadAdapter extends MultiBaseAdapter 0) { + if (bean.getSubPostNumber() != null && bean.getSubPostList() != null && bean.getSubPostList().getSubPostList() != null && bean.getSubPostList().getSubPostList().size() > 0) { holder.setVisibility(R.id.thread_list_item_content_floor_card, View.VISIBLE); - int count = Integer.valueOf(bean.getSubPostNumber()); - List postListItemBeans = bean.getSubPostList().getSubPostList(); - List subPostList = postListItemBeans; + int count = Integer.parseInt(bean.getSubPostNumber()); + List subPostList = bean.getSubPostList().getSubPostList(); List views = new ArrayList<>(); - if (postListItemBeans.size() > 3) { - subPostList = subPostList.subList(0, 3); + if (subPostList.size() > MAX_SUB_POST_SHOW) { + subPostList = subPostList.subList(0, MAX_SUB_POST_SHOW); + holder.setVisibility(R.id.thread_list_item_content_floor_more, View.VISIBLE); + } else if (subPostList.size() < count) { holder.setVisibility(R.id.thread_list_item_content_floor_more, View.VISIBLE); } else { holder.setVisibility(R.id.thread_list_item_content_floor_more, View.GONE); @@ -360,14 +362,16 @@ public class RecyclerThreadAdapter extends MultiBaseAdapter { try { - if (postListItemBeans.size() < Integer.parseInt(bean.getSubPostNumber())) { - FloorFragment.newInstance(threadBean.getId(), bean.getSubPostList().getPid(), "", true).show(((BaseActivity) mContext).getSupportFragmentManager(), threadBean.getId() + "_Floor"); + if (bean.getSubPostList().getSubPostList().size() < count) { + FloorFragment.newInstance(threadBean.getId(), bean.getSubPostList().getPid(), null, true) + .show(((BaseActivity) mContext).getSupportFragmentManager(), threadBean.getId() + "_Floor"); } else { myLinearLayout.removeAllViews(); List newViews = new ArrayList<>(); - for (ThreadContentBean.PostListItemBean postListItemBean : postListItemBeans) { + for (ThreadContentBean.PostListItemBean postListItemBean : bean.getSubPostList().getSubPostList()) { newViews.add(getContentView(postListItemBean, bean)); } myLinearLayout.addViews(newViews); @@ -377,7 +381,6 @@ public class RecyclerThreadAdapter extends MultiBaseAdapter