java - 带有 sectionindexer 的 Recyclerview (gridview)
问题描述
我需要帮助显示我在gridview 中的recyclerview,以在recyclerview 的左侧和右侧垂直显示sectionindexer(alphabetindexer)。请注意,我不需要快速滚动功能。我只需要显示索引器。请参阅我在下面显示它的示例尝试:
public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.ViewHolder> implements SectionIndexer {
private String[] alphabet = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K",
"L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
private List<String> mDataArray = Arrays. asList(alphabet);
private ArrayList<Integer> mSectionPositions;
@Override
public int getSectionForPosition(int position) {
return 0;
}
@Override
public Object[] getSections() {
List<String> sections = new ArrayList<>(26);
mSectionPositions = new ArrayList<>(26);
for (int i = 0, size = mDataArray.size(); i < size; i++) {
String section = String.valueOf(mDataArray.get(i).charAt(0)).toUpperCase();
if (!sections.contains(section)) {
sections.add(section);
mSectionPositions.add(i);
}
}
return sections.toArray(new String[0]);
}
@Override
public int getPositionForSection(int sectionIndex) {
return mSectionPositions.get(sectionIndex);
}
并查看:
<com.example.admin.widget.CustomRecyclerView
android:paddingLeft="5dp"
android:paddingStart="5dp"
android:paddingRight="5dp"
android:paddingEnd="5dp"
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
当我运行该应用程序时,它不显示任何内容。我需要弄清楚代码有什么问题。我将不胜感激以任何方式提供帮助。谢谢!
解决方案
推荐阅读
- python - 如何使用外部 USB 相机数据正确格式化 PIL.Image.frombytes
- nginx - 无法访问花
- flutter - 用于颤振的 Agora.io 通道加密不适用于跨平台
- python - 使用 Python3 启动带有参数的 Docker 容器
- angular - Angular 6的多文件下载控制
- html - heroku 中网站的主页未设置为 index.html
- pandas - 如何将多个目录中的多个 .parquet 文件读入单个 pandas 数据帧?
- qt - 使用 QtTest 对 QWizard 进行单元测试
- laravel - 如何从下拉列表中获取值并将该值自动传递给另一个表单?
- github - 比较 GitHub 网站上特定分支的两次提交