All Projects → iammert → Scalinglayout

iammert / Scalinglayout

With Scaling Layout scale your layout on user interaction.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Scalinglayout

Android 3d Layout
Wow effect, transform your layout into 3D views
Stars: ✭ 199 (-93.93%)
Mutual labels:  view, layout
ShadowDrawable
为View 和 ViewGroup 添加阴影效果--Android,Add shadow for single view or viewgroup layout.
Stars: ✭ 22 (-99.33%)
Mutual labels:  view, layout
Flexml
🚀基于Litho的Android高性能动态业务容器。
Stars: ✭ 225 (-93.13%)
Mutual labels:  view, layout
Arclayout
With Arc Layout explore new styles and approaches on material design
Stars: ✭ 1,662 (-49.27%)
Mutual labels:  view, layout
Stacks
⚡ Build React Native views blazingly fast.
Stars: ✭ 281 (-91.42%)
Mutual labels:  view, layout
Android Statefullayout
A custom Android ViewGroup to display different states of screen (CONTENT, PROGRESS, OFFLINE, EMPTY, etc.)
Stars: ✭ 140 (-95.73%)
Mutual labels:  view, layout
anchored-behavior
A CoordinatorLayout Behavior to anchor views with an animation.
Stars: ✭ 17 (-99.48%)
Mutual labels:  view, coordinatorlayout
Readablebottombar
Yet another material bottom bar library for Android
Stars: ✭ 977 (-70.18%)
Mutual labels:  view, layout
Stevia
🍃 Concise Autolayout code
Stars: ✭ 3,182 (-2.87%)
Mutual labels:  view, layout
table-layout
Styleable plain-text table generator. Useful for formatting console output.
Stars: ✭ 18 (-99.45%)
Mutual labels:  view, layout
Bannerlayout
Support unlimited picture rotation BannerLayout, the minimum implementation of the code banner
Stars: ✭ 92 (-97.19%)
Mutual labels:  view, layout
FastBanner
🔥快速轮播图,支持自定义布局和使用自有图片显示组件
Stars: ✭ 27 (-99.18%)
Mutual labels:  view, layout
Kvconstraintkit
An Impressive Auto Layout DSL for iOS, tvOS & OSX. & It is written in pure swift.
Stars: ✭ 91 (-97.22%)
Mutual labels:  view, layout
Expansionpanel
Android - Expansion panels contain creation flows and allow lightweight editing of an element.
Stars: ✭ 1,984 (-39.44%)
Mutual labels:  view, layout
Kotlinanim
Create fluent animations in a kotlin way
Stars: ✭ 72 (-97.8%)
Mutual labels:  view, layout
pulldownlayout
PullDownLayout is a small library that allows you to implement a view that can be dragged down your layout. PullDownLayout can also be used to implement Pull-To-Dismiss feature for your activities and fragments.
Stars: ✭ 16 (-99.51%)
Mutual labels:  view, layout
Physicslayout
Android layout that simulates physics using JBox2D
Stars: ✭ 658 (-79.91%)
Mutual labels:  view, layout
Androidlibs
🔥正在成为史上最全分类 Android 开源大全~~~~(长期更新 Star 一下吧)
Stars: ✭ 7,148 (+118.19%)
Mutual labels:  view, layout
FillProgressLayout
A simple and flexible Fillable Progress Layout written in Kotlin
Stars: ✭ 77 (-97.65%)
Mutual labels:  view, layout
bubble-layout
An Android ViewGroup that displays avatar bubbles... similar to the chat bubbles on Facebook Messenger.
Stars: ✭ 46 (-98.6%)
Mutual labels:  view, layout

ScalingLayout

Scale your layout on user interaction. Live Demo

Motivated by layout in Blinkist app and search bar in Spotify app.

Demo

Fab Demo

Spotify Search Demo

Usage

<iammert.com.view.scalinglib.ScalingLayout
        android:id="@+id/scalingLayout"
        android:layout_width="300dp"
        android:layout_height="48dp"
        app:radiusFactor="1">
        
        <!-- Your content here -->
        
</iammert.com.view.scalinglib.ScalingLayout>
scalingLayout.expand(); //use this if you want to expand all
scalingLayout.collapse(); //user this if you want to collapse view to initial state.
scalingLayout.setProgress(float progress); //1 is fully expanded, 0 is initial state.

Listener

scalingLayout.setListener(new ScalingLayoutListener() {
    @Override
    public void onCollapsed() {}

    @Override
    public void onExpanded() {}

    @Override
    public void onProgress(float progress) {}
});

Attribute

app:radiusFactor value is between 0 and 1 float value. 1 = full rounded corner. 0 = no rounded corner.

ScalingLayoutBehaviour

<iammert.com.view.scalinglib.ScalingLayout
        android:id="@+id/scalingLayout"
        android:layout_width="300dp"
        android:layout_height="48dp"
        app:radiusFactor="1"
        app:layout_behavior="iammert.com.view.scalinglib.ScalingLayoutBehavior">
        
        <!-- Your content here -->
        
</iammert.com.view.scalinglib.ScalingLayout>

Download

Buy Me a Coffee at ko-fi.com

maven { url 'https://jitpack.io' }
dependencies {
  compile 'com.github.iammert:ScalingLayout:1.2.1'
}

License

Copyright 2017 Mert Şimşek.

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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].