Android setItemOnclickListener在FirebaseRecyclerAdapter中不工作
我是FirebASE的新手,一直停留在setItemclickListener上,这里显示了一些片段,请帮助我。主要发生在FirebaseRecycler中,其中setItemClickListener是接口,用于Firebaserecy的Onclick Leavereqests.javaAndroid setItemOnclickListener在FirebaseRecyclerAdapter中不工作,android,firebase,Android,Firebase,我是FirebASE的新手,一直停留在setItemclickListener上,这里显示了一些片段,请帮助我。主要发生在FirebaseRecycler中,其中setItemClickListener是接口,用于Firebaserecy的Onclick Leavereqests.java @Override //LeaveReqests.java leavereq= database.getReference("LeafForm"); recyclerview = (Re
@Override
//LeaveReqests.java
leavereq= database.getReference("LeafForm");
recyclerview = (RecyclerView)findViewById(R.id.recycler_hod);
recyclerview.setHasFixedSize(true);
LinearLayoutManager manager = new LinearLayoutManager(this);
recyclerview.setLayoutManager(manager);
loadhod();
}
private void loadhod() {
adapter = new FirebaseRecyclerAdapter<LeaveReq, HodViewHolder>(LeaveReq.class,R.layout.hod_login_list
,HodViewHolder.class,leavereq) {
@Override
protected void populateViewHolder(HodViewHolder viewHolder, LeaveReq model, int position) {
viewHolder.name.setText(model.getName());
clickitem = model;
viewHolder.setItemClickListener(new ItemClickListener() { //the non working part
@Override
public void onClick(View view, int position) {
Intent hodlist = new Intent(LeaveRequests.this,HodReqList.class);
hodlist.putExtra("hodid",adapter.getRef(position).getKey());
startActivity(hodlist);
}
});
}
};
recyclerview.setAdapter(adapter);}}
java是具有名称getter的类
public class LeaveReq {
private String name;
public LeaveReq() {
}
public LeaveReq(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
项目单击侦听器界面
public interface ItemClickListener {
void onClick(View view, int position);
}
正在填充列表,但单击操作不起作用尝试类似操作 诸如RecycleView按钮之类的功能应放置在HodViewHolder类中,以便RecycleView可以识别按钮单击的工具
//public static class ViewHolder extends RecyclerView.ViewHolder {..
View mView;
//public ViewHolder(View itemView) {...
super(itemView);
mView = itemView;
viewHolder.mView .setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {....}
我希望能帮助你。@Override
@Override
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<adapter, PandaViewHolder> MyAdapter = new FirebaseRecyclerAdapter <adapter, PandaViewHolder>(
adapter.class,
R.layout.replay_panda,
HodViewHolder.class,
mDatabase
) {
@Override
protected void populateViewHolder(final PandaViewHolder viewHolder, adapter model, int position) {
final String position_key = getRef( position ).getKey().toString();
viewHolder.setTitle(model.getTitle());
//// Here
//#################################
viewHolder.mView.setOnClik{....}
//#################################
}
};
RecyclerView.setAdapter( MyAdapter );
}
public static class HodViewHolder extends RecyclerView.ViewHolder {
View mView;
DatabaseReference mDatabase1231223;
FirebaseAuth mAuth;
public PandaViewHolder(View itemView) {
super(itemView);
mView = itemView;
}
// post text view
public void setTitle(String title) {
}
受保护的void onStart(){
super.onStart();
FirebaseRecyclerAdapter MyAdapter=新的FirebaseRecyclerAdapter(
adapter.class,
R.layout.replay_panda,
HodViewHolder.class,
mDatabase
) {
@凌驾
受保护的void populateViewHolder(最终PandaViewHolder视图支架,适配器型号,内部位置){
最终字符串位置\u key=getRef(位置).getKey().toString();
setTitle(model.getTitle());
////这里
//#################################
viewHolder.mView.setOnClik{..}
//#################################
}
};
RecyclerView.setAdapter(MyAdapter);
}
公共静态类HodViewHolder扩展了RecyclerView.ViewHolder{
视图视图;
数据库参考mDatabase1231223;
FirebaseAuth mAuth;
公共PandaViewHolder(视图项视图){
超级(项目视图);
mView=项目视图;
}
//后文本视图
公共无效集合标题(字符串标题){
}
在何处进行所有这些更改..其ItemClickListener界面未设置ClickListener这是一个关于AdAfter的简单演示,以显示来自的数据;'''RecycleView'您可以理解它并对其采取行动
@Override
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<adapter, PandaViewHolder> MyAdapter = new FirebaseRecyclerAdapter <adapter, PandaViewHolder>(
adapter.class,
R.layout.replay_panda,
HodViewHolder.class,
mDatabase
) {
@Override
protected void populateViewHolder(final PandaViewHolder viewHolder, adapter model, int position) {
final String position_key = getRef( position ).getKey().toString();
viewHolder.setTitle(model.getTitle());
//// Here
//#################################
viewHolder.mView.setOnClik{....}
//#################################
}
};
RecyclerView.setAdapter( MyAdapter );
}
public static class HodViewHolder extends RecyclerView.ViewHolder {
View mView;
DatabaseReference mDatabase1231223;
FirebaseAuth mAuth;
public PandaViewHolder(View itemView) {
super(itemView);
mView = itemView;
}
// post text view
public void setTitle(String title) {
}