android - 始终将项目定位在回收站视图的顶部
问题描述
如何始终在顶部显示回收站视图中的特定项目?
public void onBindViewHolder(@NonNull final XpertViewHolder holder, final int position) {
db = FirebaseFirestore.getInstance();
db.collection(XPERT_MASTER_KEY).whereEqualTo("slug","xpert").get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
for (QueryDocumentSnapshot queryDocumentSnapshot : task.getResult()) {
xpert_name= String.valueOf(queryDocumentSnapshot.get("name"));}
}
if(xpertName.get(position).equals(xpert_name)){
holder.itemView.scrollTo(1,1);
}
}
});
解决方案
我不知道你有什么类型的清单。我假设你有对象类型列表。假设您的 POJO 文件名是Data
并且您有条件将该项目设置在顶部。例如数据有一个字符串名称标题和条件是 if title.equals("value")
您可以使用以下代码。
for (int i = 0; i< dataList.size(); i++) {
if (dataList.get(i).title.equals("value")){
Collections.rotate(dataList, i);
}
}
推荐阅读
- rust - 如何使用 Rust 在 Substrate 中对帐户 ID 的十六进制字符串表示进行编码?
- continuous-integration - 在哪里放置 cypress 测试:使用前端代码还是自己的 repo?
- java - 如何在java中用给定的替换图替换一些单词?
- javascript - 在触摸设备上用 JS 替换 CSS :hover 到 :active
- python - 如何在python中正确保存和加载包含CountVectorizer步骤的模型管道
- google-api - 使用 BatchRequest 通过 Google Classroom API 添加许多课程时出现错误“操作已中止”
- mysql - Google Apps 脚本 setTimestamp 到 mysql 数据库
- android - 我已正确连接到 firebae 项目,但“.info/connected”总是返回 false,我也有良好的互联网连接
- python - 将重叠图添加到 pdf 多页
- php - 在 URL 中更改/插入字符