Look like there is no way to get header item position correctly, because this library used attach and detach header view in StickyGridHeadersBaseAdapterWrapper
HeaderFillerView v = getHeaderFillerView(adapterPosition.mHeader, convertView, parent);
View view = mDelegate.getHeaderView(adapterPosition.mHeader, (View)v.getTag(), parent);
mGridView.detachHeader((View) v.getTag());
v.setTag(view);
mGridView.attachHeader(view);
convertView = v;
mLastHeaderViewSeen = v;
v.forceLayout();
Actually, it called dispatchAttachedToWindow
and dispatchDetachedFromWindow
of view class by reflection. And it caused getting wrong windows on entire screen as nosacky
said.
Now I am quit and replace this StickyGridHeaders by Listview with Header item and Gridview item. This isn't a best way but it can work.