Skip to content
One Behavior help AppBarLayout to scroll spring and with fling fix app bar
Branch: master
Clone or download
Latest commit 0de0379 Aug 7, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app update gradle tool Aug 7, 2018
appbarspring update version 1.0.7 Aug 7, 2018
gradle/wrapper
screenshot update gif Sep 28, 2017
.gitignore add the properties Nov 14, 2016
README.md update version 1.0.7 Aug 7, 2018
build.gradle update gradle tool Aug 7, 2018
gradle.properties update version Sep 27, 2017
gradlew first ci Oct 13, 2016
gradlew.bat first ci Oct 13, 2016
settings.gradle
upload.sh add upload file Sep 27, 2017

README.md

appbarlayout-spring-behavior

One library contains one behavior help appbarlayout to scroll spring. In the sample have add the realtimeblur test and add tablayout with TabScrimHelper(animate color with CollapsingToolbarLayout).Because of some methods in the Behavior of AppBarLayout not open to the out package. So I set the package name same to the support design.

Download Sample

Screenshot

First is with spring. Second with blur and TabScrimHelper.

H H

Installation

dependencies {
    compile 'com.github.todou:appbarspring:1.0.7'
}

Usages

AppBarLayout-Spring

<android.support.design.widget.AppBarLayout
        ...
        app:layout_behavior="@string/appbar_spring_behavior"
        ...>
        ...
</android.support.design.widget.AppBarLayout>

if you want add blur with the spring.You can add this by the RealtimeBlurView:

final RealtimeBlurView realtimeBlurView = (RealtimeBlurView) findViewById(R.id.real_time_blur_view);
AppBarLayout appBarLayout = (AppBarLayout) findViewById(R.id.app_bar);
AppBarLayoutSpringBehavior springBehavior = (AppBarLayoutSpringBehavior) ((CoordinatorLayout.LayoutParams) appBarLayout.getLayoutParams()).getBehavior();
springBehavior.setSpringOffsetCallback(new AppBarLayoutSpringBehavior.SpringOffsetCallback() {
      @Override
      public void springCallback(int offset) {
           int radius = 20 * (240 - offset > 0 ? 240 - offset : 0) / 240;
           realtimeBlurView.setBlurRadius(radius);
      }
});

With the tablayout you can add TabScrimHelper to let TabLayout animate color with the CollapsingToolbarLayout:

TabScrimHelper tabScrimHelper = new TabScrimHelper(tabLayout, collapsingToolbarLayout);
appBarLayout.addOnOffsetChangedListener(tabScrimHelper);

License

Copyright 2016 ToDou

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.
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.