我正在使用Firebase数据库开发一个带有片段和回收器视图的应用程序。我希望该应用程序从数据库中获取数据并将其显示在片段布局中。我非常认为我的代码很好,应该可以正常工作。
我得到错误日志E/RecyclerView:未连接适配器;跳过布局
我在其他问题和论坛上尝试了一切。
这是我的家。java代码:
public class home extends Fragment {
private OnFragmentInteractionListener mListener;
public home() {
}
// TODO: Rename and change types and number of parameters
public static home newInstance() {
home fragment = new home();
Bundle args = new Bundle();
fragment.setArguments(args);
return fragment;
}
//to recycler view.
private RecyclerView recyclerView;
public View view;
private ArrayList<Model> listItem;
ViewAdapter Vadapter;
DatabaseReference dbRef;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
view = inflater.inflate(R.layout.fragment_home, container,false);
recyclerView = view.findViewById(R.id.carDetailsContainer);
listItem = new ArrayList<Model>();
RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(getContext());
recyclerView.setLayoutManager(layoutManager);
dbRef = FirebaseDatabase.getInstance().getReference().child("Cars");
Vadapter = new ViewAdapter(getContext(),listItem);
recyclerView.setAdapter(Vadapter);
return inflater.inflate(R.layout.fragment_home, container, false);
}
@Override
public void onStart() {
super.onStart();
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot ds : dataSnapshot.getChildren())
{
Model model = new Model(ds.child("Name").getValue().toString(),ds.child("Milege").getValue().toString(),ds.child("Fuel").getValue().toString(),ds.child("Transmission").getValue().toString(),ds.child("Rate").getValue().toString());
listItem.add(model);
}
Vadapter = new ViewAdapter(getContext(),listItem);
recyclerView.setAdapter(Vadapter);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
};
dbRef.addValueEventListener(valueEventListener);
}
public interface OnFragmentInteractionListener {
// TODO: Update argument type and name
void onFragmentInteraction(Uri uri);
}
}
我的适配器类:
public class ViewAdapter extends RecyclerView.Adapter<ViewAdapter.MyViewHolder> {
DatabaseReference ref;
FirebaseDatabase fbRref;
Context context;
ArrayList<Model> model;
public ViewAdapter(Context c, ArrayList<Model> listItems)
{
this.context = c;
this.model = listItems;
}
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
LayoutInflater inflater = LayoutInflater.from(context);
View view = inflater.inflate(R.layout.car_details, parent, false);
fbRref = FirebaseDatabase.getInstance();
ref = fbRref.getReference();
return new MyViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {
holder.carName.setText(model.get(position).getmCarName());
holder.seatingCapacity.setText(model.get(position).getmSeatingCapacity());
}
@Override
public int getItemCount() {
return model.size();
}
class MyViewHolder extends RecyclerView.ViewHolder
{
public TextView carName,seatingCapacity;
public MyViewHolder(@NonNull View itemView)
{
super(itemView);
carName = itemView.findViewById(R.id.car_name);
seatingCapacity = itemView.findViewById(R.id.seating_capacity);
}
}
}
我在这方面陷入了困境。提前感谢。
您应该将RecylcerView的初始化移动到创建的视图中,而不是创建视图中,请看这个答案
尝试更改
return inflater.inflate(R.layout.fragment_home, container, false);
到
return view;
当应用程序启动时,我得到一个空白屏幕,当我检查日志时,我得到:E/回收人员视图:没有连接适配器;跳过布局错误 我不知道为什么?任何想法,它似乎没有附加回收器视图或添加任何数据,我附加了Main活动、DataAdapter和数据类。 主要活动 数据适配器 下面是我的数据类,将从中提取数据 我ncluded.java 收集器和设置器 这是jsonResponse类,在接口中引用 感谢任何帮助。
我已经创建了一个片段,在该片段中有一个recycle view,但是当我的片段被加载时,什么也没有显示,它给出了这个错误“E/recycle view:没有连接适配器;跳过布局”。下面是适配器和片段类的代码,任何帮助都将不胜感激 适配器类: 片段类: fragment _ view _ all _ my _ recipes . XML view_all_recipe_item.xml
我制作了一个基本的购物清单应用程序,它利用回收器视图来显示列表项目。我正在尝试使用带有片段的导航添加设置屏幕。我遇到了我的回收器视图的问题 主活动.kt HomeFragment.kt 设置Fragment.kt activity_main.xml fragment\u home.xml navigation.xml 不确定是否需要更多信息。提前道歉-我是android studio的新手
一切正常,但数据没有显示。 但是当我签入“logcat”时,我发现了这个错误消息: 2021 10月20日11:29:37.387 7327-7327/com。实例myplay E/RecyclerView:未连接适配器;跳过布局 2021-10-20 11:29:37.388 7327-7327/com.example.myplayE/RecyClerView:未连接适配器;跳过布局 主要活动。
这是我的密码管理活动 包裹通讯。实例密码管理器; 这是我导入的库 定义变量 开始设置视图@覆盖在创建(捆绑保存的即时状态)上受保护的空{super.on创建(保存的即时状态);setContentView(R.layout.activity_password_manager);工具栏=findViewById(R.id.toolbar); 出现以下错误:
我想从火力点实时数据库显示图片。(带有加密图像(字符串))类似加密图像是“照片” 函数loadPhoto() 问题出在哪里?我连接adapter和recyclerview,并设置GridManager。