Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java FirebaseRecyclerView在片段内部不工作_Java_Android_Firebase - Fatal编程技术网

Java FirebaseRecyclerView在片段内部不工作

Java FirebaseRecyclerView在片段内部不工作,java,android,firebase,Java,Android,Firebase,OnCreateView中的代码 contactList = v.findViewById(R.id.contacts_list); contactList.setLayoutManager(new LinearLayoutManager(getActivity())); contactList.setItemAnimator(new DefaultItemAnimator()); String UID = FirebaseAuth.getInst

OnCreateView中的代码

contactList = v.findViewById(R.id.contacts_list);
        contactList.setLayoutManager(new LinearLayoutManager(getActivity()));
        contactList.setItemAnimator(new DefaultItemAnimator());
        String UID = FirebaseAuth.getInstance().getCurrentUser().getUid();
        Log.i("UID",UID);
        Query query = FirebaseDatabase.getInstance()
                .getReference()
                .child("contacts").child(UID).child("contact").limitToLast(50);

        options = new FirebaseRecyclerOptions.Builder<ContactModel>()
                .setQuery(query, ContactModel.class)
                .build();


        contactList.setAdapter(new ContactsAdapter(options,getActivity()));
contactList=v.findviewbyd(R.id.contacts\u list);
setLayoutManager(新的LinearLayoutManager(getActivity());
setItemAnimator(新的DefaultItemAnimator());
字符串UID=FirebaseAuth.getInstance().getCurrentUser().getUid();
Log.i(“UID”,UID);
Query Query=FirebaseDatabase.getInstance()
.getReference()
.child(“联系人”).child(UID.child(“联系人”).limitToLast(50);
选项=新的FirebaseRecyclerOptions.Builder()
.setQuery(查询,ContactModel.class)
.build();
setAdapter(新的ContactsAdapter(选项,getActivity());
适配器类中的代码

 public class ContactsAdapter extends FirebaseRecyclerAdapter<ContactModel, Contacts.ViewHolder> {
        Context c;

        public ContactsAdapter(FirebaseRecyclerOptions<ContactModel> options, Context c) {
            super(options);
            this.c = c;

        }

        @Override
        protected void onBindViewHolder(final ViewHolder holder, int position, ContactModel model) {

        }

        @Override
        public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
            View v = LayoutInflater.from(parent.getContext())
                    .inflate(R.layout.private_chat_item, parent, false);
            return new ViewHolder(v);
        }
}
公共类ContactsAdapter扩展了FirebaseRecyclerAdapter{
上下文c;
公共联系人适配器(FirebaseRecyclerOptions选项,上下文c){
超级(期权);
这个.c=c;
}
@凌驾
受保护的无效onBindViewHolder(最终ViewHolder、int位置、ContactModel){
}
@凌驾
public ViewHolder onCreateViewHolder(视图组父级,int-viewType){
视图v=LayoutInflater.from(parent.getContext())
.充气(R.layout.private\u chat\u项目,父项,false);
返回新的视图持有者(v);
}
}
参考资料没有问题。我在一个活动类中使用了相同的引用,它是有效的


我还使用了firebase recyclerview的旧版本。它工作得很好。那么问题出在哪里呢?

使用
adapter.startListening()
before
setAdapter
方法为我解决了这个问题。

如果尝试将
parent.getContext()
更改为
(c)
,该怎么办。上下文是
c
??试试看,告诉我!同样的问题。现在我尝试添加日志。我在onCreateViewHolder中添加了日志。但它不叫。。。