我注意到 SuperSlim 在调用 getChildAt(0) 时不返回第一个标头,而是第一部分中的第一个(非标头)项。
我怎样才能得到第一个标题?我需要它的其他计算的高度。
查看源代码,我发现函数“getHeaderOrFirstViewForSection”似乎是我正在寻找的,但是它被声明为私有,所以我无法访问它。
我通过这篇文章https://github.com/2013mzhou/blog/blob/master/bug%26extend/Get%20StickyHeaderView%20in%20SuperSLiM.md解决了这个问题。它运行良好。
像这样使用时
final LayoutManager layout = new LayoutManager(getActivity());
layout.setOnHeaderListener(new LayoutManager.StickyHeaderWatcher() {
@Override
public void onStickyStateChanged(View header, int position) {
Log.i("StickyHeaderWatcher",position+"");
if (header instanceof TextView) {
Log.i("StickyHeaderWatcher", ((TextView) header).getText().toString());
}
}
});