1.popwindow嵌套了recyclerview,但是不显示内容
2.相关代码如下
popwindow布局xml-------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fl_familyList"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignTop="@+id/rl_family"
android:background="@color/colorRlBg">
<RelativeLayout
android:id="@+id/ly_family_list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/rv_mfamily_list"
android:layout_width="match_parent"
android:layout_height="200dp">
</android.support.v7.widget.RecyclerView><!--家庭列表-->
</RelativeLayout>
</FrameLayout>
适配器代码--------------------------------------------------------------------------
public class RvFamilyAdapter extends RecyclerView.Adapter<RvFamilyAdapter.ViewHolder>{
private List<Family> mfamilyList;
public RvFamilyAdapter(List<Family> familyList) {
mfamilyList = familyList;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//设置RecyclerView的源item.xml
View view = LayoutInflater.from(parent.getContext())
.inflate(R.layout.family_familylist_recyclerview_item, parent, false);
ViewHolder holder = new ViewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(@NonNull RvFamilyAdapter.ViewHolder holder, int position) {
//通过position位置找到每个列表子项,并用Intelligent对象存储
//为子项view设置属性,值为family中存的字段
holder.tv_family_name.setText(mfamilyList.get(position).getFamilyName());
holder.tv_family_owner_name.setText(mfamilyList.get(position).getFamilyOwner());
}
@Override
public int getItemCount() {
return mfamilyList.size();
}
/*ViewHolder内部类是必须实现的*/
static class ViewHolder extends RecyclerView.ViewHolder {
ImageView iv_family_is_true;
ImageView iv_family_logo;
TextView tv_family_name;
TextView tv_family_character;
TextView tv_family_owner_name;
/*
* 在 ViewHolder内部类里初始化布局中的view
* */
ViewHolder(View itemView) {
super(itemView);
//注意这里的view和Activity不一样,通过参数itemView来find
iv_family_is_true = itemView.findViewById(R.id.iv_family_is_true);
iv_family_logo = itemView.findViewById(R.id.iv_family_logo);
tv_family_name = itemView.findViewById(R.id.tv_family_name);
tv_family_character = itemView.findViewById(R.id.tv_family_character);
tv_family_owner_name = itemView.findViewById(R.id.tv_family_owner_name);
}
}
}
绑定适配器:-------------------------------------------------------------------------
private void handRecyList(){
View view = LayoutInflater.from(getActivity()).inflate(R.layout.family_popwindow_view,null);
RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.rv_mfamily_list);
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity());
linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL);
recyclerView.setLayoutManager(linearLayoutManager);
family_adapter = new RvFamilyAdapter(getFamilyList());
recyclerView.setAdapter(family_adapter);
family_adapter.notifyDataSetChanged();
}
3.报错信息:RecyclerView: No adapter attached; skipping layout
4.试过很多方法如:把线性布局换成相对布局、初始化时候setadapter、更新数据源family_adapter.notifyDataSetChanged()、clean&&rebuild.........始终找不出原因,难道是因为我把popwindow放在fragment中导致的?找了一周原因了,请大神们帮帮忙吧,不胜感激!
我有几个问题想问你,
1.recyclerview是在popwindows里面吗?
2.你是列表的内容不能显示,还是popwindow根本弹不出来?
你是不是这里没有
没有设置背景?
下面是我做的一个demo,这个是效果

代码路径为:
https://github.com/love0829/l...
欢迎star