MCPcopy Index your code
hub / github.com/carlonzo/StikkyHeader

github.com/carlonzo/StikkyHeader @0.0.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release 0.0.3 ↗ · + Follow
180 symbols 392 edges 20 files 10 documented · 6%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

StikkyHeader

This is a very simple library for Android that allows you to stick an header to a ListView and easily apply animation to it

Usage

To use the StikkyHeader library, you just need 3 lines:

  StikkyHeaderBuilder.stickTo(mListView)
    .setHeader(R.id.header, containerLayout)
    .minHeightHeader(250)
    .build();

that's all, folks!

Header Animator

Using the StikkyHeader you can create easly some nice animations extending the HeaderStikkyAnimator and using the utility AnimatorBuilder. The animations available are Translation, Scale and Fade and can be combined to build an animation during the translation of the StikkyHeader.

Example:

public class IconAnimator extends HeaderStikkyAnimator {

    @Override
    public AnimatorBuilder getAnimatorBuilder() {

        View viewToAnimate = getHeader().findViewById(R.id.icon);
        Point point = new Point(50,100) // translate to the point with coordinate (50,100);
        float scaleX = 0.5f //scale to the 50%
        float scaleY = 0.5f //scale to the 50%
        float fade = 0.2f // 20% fade

        AnimatorBuilder animatorBuilder = AnimatorBuilder.create()
            .applyScale(viewToAnimate, scaleX, scaleY)
            .applyTranslation(viewToAnimate, point)
            .applyFade(viewToAnimate, fade);

        return animatorBuilder;
    }
}

and then set the animator to the StikkyHeader:

  StikkyHeaderBuilder.stickTo(mListView)
    .setHeader(R.id.header, containerLayout)
    .minHeightHeader(250)
    .animator(new IconAnimator())
    .build();

ViewGroups supported

The StikkyHeader supports: - ListView - RecyclerView - ScrollView

How to integrate

Grab via Gradle:

repositories {
  maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
}
dependencies {
  compile 'com.github.carlonzo.stikkyheader:core:0.0.2-SNAPSHOT'
}

or via Maven:

<dependency>
  <groupId>com.github.carlonzo.stikkyheader</groupId>
  <artifactId>core</artifactId>
  <version>0.0.2-SNAPSHOT</version>
</dependency>

Video

Example 1 Example 2

Demo

here the link to the emulator to try few examples.

Core symbols most depended-on inside this repo

getHeader
called by 12
core/src/main/java/it/carlom/stikkyheader/core/HeaderAnimator.java
build
called by 10
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderBuilder.java
stickTo
called by 7
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderBuilder.java
setHeader
called by 7
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderBuilder.java
create
called by 7
core/src/main/java/it/carlom/stikkyheader/core/animator/AnimatorBuilder.java
minHeightHeaderDim
called by 5
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderBuilder.java
addAnimator
called by 5
core/src/main/java/it/carlom/stikkyheader/core/animator/AnimatorBuilder.java
minHeightHeader
called by 4
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderBuilder.java

Shape

Method 150
Class 29
Enum 1

Languages

Java100%

Modules by API surface

core/src/main/java/it/carlom/stikkyheader/core/animator/AnimatorBuilder.java24 symbols
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderBuilder.java20 symbols
example/src/main/java/it/carlom/stickyheader/example/fragment/RecyclerStikkyFragment.java15 symbols
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeader.java13 symbols
core/src/main/java/it/carlom/stikkyheader/core/HeaderAnimator.java12 symbols
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderRecyclerView.java10 symbols
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderListView.java10 symbols
example/src/main/java/it/carlom/stickyheader/example/fragment/MaterialLikeHeaderFragment.java9 symbols
example/src/main/java/it/carlom/stickyheader/example/fragment/ParallaxStikkyFragment.java8 symbols
example/src/main/java/it/carlom/stickyheader/example/fragment/ActionBarImageFragment.java7 symbols
core/src/main/java/it/carlom/stikkyheader/core/StikkyHeaderScrollView.java7 symbols
example/src/main/java/it/carlom/stickyheader/example/fragment/SimpleStikkyFragment.java6 symbols

For agents

$ claude mcp add StikkyHeader \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact