android - 如何在 Firebase-ui ListVeiw 中实现点击监听器?
问题描述
我一直在使用此链接中提供的 Firebase-ui 提供的 ListVeiw 实现。我打算为每一行放置一个 OnClick 侦听器。按下时它应该改变背景颜色,但我找不到任何方法来完成它。任何帮助都会很棒。
--到目前为止完成--
活动
public class AddActivity extends AppCompatActivity {
//Databse refernce
FirebaseDatabase database= FirebaseDatabase.getInstance();
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add);
listView = findViewById(R.id.listveiw);
Query query = FirebaseDatabase.getInstance()
.getReference("l")
.child("p")
.limitToLast(50);
FirebaseListOptions<ListItem> options = new FirebaseListOptions.Builder<ListItem>()
.setLayout(R.layout.listitem)
.setQuery(query, ListItem.class)
.build();
FirebaseListAdapter<ListItem> adapter = new FirebaseListAdapter<ListItem>(options) {
@Override
protected void populateView(View v, ListItem model, int position) {
String s = model.getName();
TextView a= v.findViewById(R.id.textView2);
a.setText(s);
s=model.getWatch();
a= v.findViewById(R.id.textView3);
a.setText(s);
ImageButton b= v.findViewById(R.id.imageButton);
}
};
listView.setAdapter(adapter);
}
}
ListItem.class
public class ListItem {
private String name;
private String watch;
public ListItem(){}
public ListItem(String name,String watch){
this.name=name;
this.watch=watch;
}
public String getName() {
return name;
}
public String getWatch() {
return watch;
}
public void setName(String name) {
this.name = name;
}
public void setWatch(String watch) {
this.watch = watch;
}
}
解决方案
您可以在 populateView(...) 内的 listView 中设置这样的点击事件
mView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(this, YourActivity.class);
intent.putExtra(TITLE, title);
intent.putExtra(CONTENT, content);
intent.putExtra(KEY, key);
startActivity(intent);
}
推荐阅读
- dialogflow-es - 如何将 Dialogflow 分析器发送到电子邮件
- swift - 在 Swift 中获取时区缩写
- hadoop - 奇怪的 Hadoop 行为,掌握所有工作?
- html - 无法将按钮与 CSS flex 或网格对齐
- reactjs - NextJS React,UseState中的嵌套数组未在javascript内部更新时呈现
- reactjs - '||' 的意外混合 和 '&&' 非混合运算符
- python - 将操作按钮从 openerp 迁移到 odoo 13
- javascript - 在 apex oracle 中使用 javascript 选择列表
- mysql - 如何优化这个查询(n+1 和dense_rank 之后)
- angular - 测试 jasmine 中的 ngIf 元素