我正在尝试将Firebase数据库中的数据显示到RecylerView,并且正在按照本教程http://www.programmingviral.com/firebase-recyclerview-tutorial/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.biodatalist_layout);
ButterKnife.bind(this);
recyclerView = findViewById(R.id.rec);
LinearLayoutManager horizontalLayoutManagaer=new LinearLayoutManager(this,LinearLayoutManager.VERTICAL,false);
recyclerView.setLayoutManager(horizontalLayoutManagaer);
mdatabase = FirebaseDatabase.getInstance().getReference().child("Biodata");
mdatabase.keepSynced(true);
FirebaseRecyclerAdapter<BiodataModel, BiodataAdapter> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<BiodataModel, BiodataAdapter>(
BiodataModel.class,
R.layout.biodata_list_row,
BiodataAdapter.class,
mdatabase
)
{
@Override
protected void populateViewHolder(final BiodataAdapter viewHolder,final BiodataModel model,
int position) {
viewHolder.setEmailtext(model.getEmail());
viewHolder.setFullnametext(model.getFullname());
}
};
recyclerView.setAdapter(firebaseRecyclerAdapter);
}
和我的
BiodataModel
public class BiodataModel {
public String Fullname,Email,NoTelp,Alamat;
public BiodataModel() {
}
public String getFullname() {
return Fullname;
}
public String getEmail() {
return Email;
}
public String getNoTelp() {
return NoTelp;
}
public String getAlamat() {
return Alamat;
}
public void setFullname(String Fullname) {
this.Fullname = Fullname;
}
public void setEmail(String Email) {
this.Email = Email;
}
public void setNoTelp(String NoTelp) {
this.NoTelp = NoTelp;
}
public void setAlamat(String Alamat) {
this.Alamat = Alamat;
}
}
当我进行这项活动时。我得到这个错误
com.google.firebase.database.DatabaseException:找到两个getter或
区分大小写的属性字段冲突:alamat
我的结构
我该如何解决?
最佳答案
在您的数据库中,您拥有具有小写字母的属性:alamat
。但是在模型类中,您的字段Alamat
具有大写字母,两者应该相同。
更改模型类中的字段:
public String alamat;
public String getAlamat() {
return alamat;
}
public void setAlamat(String alamat) {
this.alamat = alamat;
}
关于java - 从Firebase数据库显示到FirebaseRecyclerAdapter时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50132803/