StickyGridHeaders
Replacement project at SuperSLiM
This repository is abandoned and will no longer see any development or support.
The replacement SuperSLiM is an implementation of a layout manager on top of RecyclerView. It offers extensible layouts per section, and multiple display modes for headers, including sticky headers. Really, it is better in every way with superior performance, configuration, and is not a hack of ListView, which should completely sell you on it.
StickyGridHeaders is an Android library for Android 2.3+ that provides a GridView
that shows items in sections with headers. By default the section headers stick to the top like the People app in Android 4.x but this can be turned off. StickyGridHeaders also automatically sizes its rows to the largest item in the row.
StickyGridHeaders has been designed to be adapter compatible with, and was inspired by, StickyListHeaders.
Roadmap
Version 1.0.1 has been released!
Development on master
will now focus on bringing the headers into the view hierarchy and resolving dpad navigation issues.
Usage
Sticky Grid Headers can be added to your project as an Android Library Project, a Jar library, or using Maven.
StickyGridHeadersGridView
replaces the use of a GridView
in your application and is used in the same manner. To get all the functionality your ListAdapter
must implement one of either StickyGridHeadersBaseAdapter
or StickyGridHeadersSimpleAdapter
. The choice of the implementation allows you to decide between the 'Simple' version which automatically does some housework to enable the grid sections and headers, or the 'Base' version which leaves that work to you so you can implement a specific solution for your data set.
Including in your Project
This library can be used as a .jar
file included in the libs/
directory of your project. The latest version is available from Google Drive.
For Maven users, StickyGridHeaders can now be easily included by specifying it as a dependency:
<dependency>
<groupId>com.tonicartos</groupId>
<artifactId>stickygridheaders</artifactId>
<version>1.0.1</version>
</dependency>
Compatibility
The simple adapter interface has the same signature as StickyListHeadersAdapter
so if you are using the StickyListHeaders library your adapters are already ready for StickyGridHeaders.
Example
The example source code is included in this repository.
License
Copyright 2013 Tonic Artos
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.