Android 获取运行时错误:java.lang.RuntimeException:java.lang.NoSuchMethodException
问题是,当我尝试将firebase数据获取到RecyclerView中时,出现了运行时错误。 错误是 我上一次实现了它,但现在我无法理解我做错了什么 我的主类设置firebase初始化-Android 获取运行时错误:java.lang.RuntimeException:java.lang.NoSuchMethodException,android,android-studio,firebase-realtime-database,Android,Android Studio,Firebase Realtime Database,问题是,当我尝试将firebase数据获取到RecyclerView中时,出现了运行时错误。 错误是 我上一次实现了它,但现在我无法理解我做错了什么 我的主类设置firebase初始化- public class Shayari extends AppCompatActivity { private RecyclerView recyclerView; private DatabaseReference reference; TextView t
public class Shayari extends AppCompatActivity {
private RecyclerView recyclerView;
private DatabaseReference reference;
TextView texttest;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_shayari);
texttest=findViewById(R.id.test);//just for test
reference= FirebaseDatabase.getInstance().getReference("Catogory/Love");
recyclerView=findViewById(R.id.recyclerview);
recyclerView.setLayoutManager(new LinearLayoutManager(this,LinearLayoutManager.HORIZONTAL,false));
recyclerView.setHasFixedSize(true);
FirebaseRecyclerAdapter<DataModel,DataViewHolder> adapter = new FirebaseRecyclerAdapter<DataModel, DataViewHolder>(
DataModel.class,
R.layout.item_recyclerview,
DataViewHolder.class,
reference) {
@Override
protected void populateViewHolder(DataViewHolder viewHolder, DataModel model, int position) {
viewHolder.setTitle(model.getTitle());
viewHolder.setShayari(model.getShayari());
}
};
recyclerView.setAdapter(adapter);
texttest.setText(reference.toString());
}
public class DataViewHolder extends RecyclerView.ViewHolder{
TextView text_title,text_shayari;
public DataViewHolder(View itemView) {
super(itemView);
text_title=itemView.findViewById(R.id.titletext);
text_shayari=itemView.findViewById(R.id.shayaritext);
}
public void setShayari(String shayari) {
text_shayari.setText(shayari);
}
public void setTitle (String title){
text_title.setText(title);
}
}
}
这是我的firebase层次结构
“data”内部类必须是静态的 改变这个
public class DataViewHolder extends RecyclerView.ViewHolder
到
class DataModel {
private String titles, shayaris;
public DataModel() {
}
public DataModel(String titles, String shayaris) {
this.titles = titles;
this.shayaris = shayaris;
}
public String getTitle()
{
return titles;
}
public void setTitle(String title) {
this.titles = title;
}
public String getShayari() {
return shayaris;
}
public void setShayari(String shayari) {
this.shayaris = shayari;
}
}
public class DataViewHolder extends RecyclerView.ViewHolder
public static class DataViewHolder extends RecyclerView.ViewHolder