gpt4 book ai didi

java - 我想使用回收器 View 从 firebase 获取数据到内部 fragment

转载 作者:行者123 更新时间:2023-12-02 00:46:04 25 4
gpt4 key购买 nike

我正在尝试为自己创建一个项目。我在某个时候陷入困境。

我想使用回收器 View 将数据从 firebase 获取到内部 fragment 。

我真的需要你的帮助。

我尝试了几种方法。但我做不到。我创建了 recyclerviewconfig 和 firebasehelper 类,但它不起作用。今天我尝试了 firebaseUI。但又没用。

public class Kumas extends Fragment {

private View KumasFragmet;
private RecyclerView KumasListesi;
private DatabaseReference MaliyetKumasListesiReference;


@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
KumasFragmet= inflater.inflate(R.layout.fragment_kumas, container, false);

MaliyetKumasListesiReference = FirebaseDatabase.getInstance().getReference().child("test carisi").child("modeller").child("1").child("maliyet").child("kumas");

KumasListesi = (RecyclerView) KumasFragmet.findViewById(R.id.maliyet_kumaş_rw);
KumasListesi.setLayoutManager(new LinearLayoutManager(getContext()));


FloatingActionButton flt = (FloatingActionButton) KumasFragmet.findViewById(R.id.kumas_ekle_floating);
flt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent in = new Intent(getActivity(),KumasEkle.class);
startActivity(in);
}
});

return KumasFragmet;
}

@Override
public void onStart() {
super.onStart();

FirebaseRecyclerOptions<KumasTanim> options = new FirebaseRecyclerOptions.Builder<KumasTanim>()
.setQuery(MaliyetKumasListesiReference,KumasTanim.class)
.build();

FirebaseRecyclerAdapter<KumasTanim,MaliyetKumasListesiViewHolder> adapter =
new FirebaseRecyclerAdapter<KumasTanim, MaliyetKumasListesiViewHolder>(options) {
@Override
protected void onBindViewHolder(@NonNull final MaliyetKumasListesiViewHolder maliyetKumasListesiViewHolder, int i, @NonNull KumasTanim kumasTanim) {

maliyetKumasListesiViewHolder.kumas_adi.setText(kumasTanim.getKumas_adi());
maliyetKumasListesiViewHolder.sarfiyat.setText(kumasTanim.getSarfiyat());
maliyetKumasListesiViewHolder.fiyat.setText(kumasTanim.getFiyat());



}

@NonNull
@Override
public MaliyetKumasListesiViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.maliyet_kumas_item,parent,false);
MaliyetKumasListesiViewHolder maliyetKumasListesiViewHolder = new MaliyetKumasListesiViewHolder(view);
return maliyetKumasListesiViewHolder;
}
};
KumasListesi.setAdapter(adapter);
adapter.startListening();
}

public static class MaliyetKumasListesiViewHolder extends RecyclerView.ViewHolder {

TextView kumas_adi,sarfiyat,fiyat;

public MaliyetKumasListesiViewHolder(@NonNull View itemView) {
super(itemView);

kumas_adi = itemView.findViewById(R.id.item_kumas_adi_tw);
sarfiyat = itemView.findViewById(R.id.item_sarfiyat_tw);
fiyat = itemView.findViewById(R.id.item_fiyat_tw);
}
}
}

它没有给出任何错误。

最佳答案

请添加事件监听器,如果您没有获取数据,那么您可能会收到数据库错误。请先检查该错误。首先解决问题。

  MaliyetKumasListesiReference .addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Post post = dataSnapshot.getValue(Post.class);
System.out.println(post);
}

@Override
public void onCancelled(DatabaseError databaseError) {
System.out.println("The read failed: " + databaseError.getCode());
}
});

关于java - 我想使用回收器 View 从 firebase 获取数据到内部 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57896511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com