All Projects β†’ andrefrsousa β†’ Superbottomsheet

andrefrsousa / Superbottomsheet

Licence: mit
Android native BottomSheet on steroids πŸ’ͺ

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Superbottomsheet

Bottomsheet
BottomSheet dialog library for Android
Stars: ✭ 219 (-60.04%)
Mutual labels:  android-app, android-application, android-development, android-ui, bottomsheet
Datingapp
Dating UI kit is used for online meet up with girls and boys . The screen contains more than 30 icons and most of all required elements required to design an application like this. The XML and JAVA files contains comments at each and every point for easy understanding. Everything was made with a detail oriented style and followed by today's web trends. Clean coded & Layers are well-organized, carefully named, and grouped.
Stars: ✭ 97 (-82.3%)
Mutual labels:  android-app, android-application, android-development, android-ui
Edxposedmanager
Companion Android application for EdXposed
Stars: ✭ 1,172 (+113.87%)
Mutual labels:  android-app, android-application, android-development, android-ui
Android Arsenal.com
Source to android-arsenal.herokuapp.com
Stars: ✭ 541 (-1.28%)
Mutual labels:  android-app, android-application, android-development, android-ui
PlantShopUI-Android
Check out the new style for App Design aims for the Online Plant Shop Service using jetpack compose...πŸ˜‰πŸ˜€πŸ˜πŸ˜Ž
Stars: ✭ 29 (-94.71%)
Mutual labels:  android-development, android-application, android-ui, android-app
Androidkex
Extensions for Kotlin. Use the power of Kotlin to make your code smaller and beautiful.
Stars: ✭ 35 (-93.61%)
Mutual labels:  android-app, android-application, android-development, android-ui
Cameraxdemo
A sample camera app with CameraX API from Android Jetpack
Stars: ✭ 112 (-79.56%)
Mutual labels:  android-app, android-application, android-development, android-ui
Mediapicker
Easy customizable picker for all your needs in Android application
Stars: ✭ 105 (-80.84%)
Mutual labels:  android-app, android-application, android-development, android-ui
Modern Android Development
Modern Android Development tools & key points
Stars: ✭ 219 (-60.04%)
Mutual labels:  android-app, android-application, android-development, android-ui
Ibackdrop
A library to simply use Backdrop in your project (make it easy). Read more ->
Stars: ✭ 137 (-75%)
Mutual labels:  android-app, android-application, android-development, android-ui
Music Player Go
🎢🎼 Very slim music player πŸ‘¨β€πŸŽ€ 100% made in Italy πŸ•πŸŒ³πŸŒžπŸπŸŒ„
Stars: ✭ 654 (+19.34%)
Mutual labels:  android-app, android-application, android-development, android-ui
Android-daily-read-tips
log for articles and info in android for every developer
Stars: ✭ 13 (-97.63%)
Mutual labels:  android-development, android-application, android-ui, android-app
Zoomrecylerlayout
🎒 Zoom Recycler Layout Manager For Android Kotlin
Stars: ✭ 618 (+12.77%)
Mutual labels:  android-app, android-application, android-development, android-ui
Phonenumberverificationui Android
Check out the new style for mobile number verification πŸ˜‰πŸ˜‰πŸ˜ŠπŸ˜Š
Stars: ✭ 52 (-90.51%)
Mutual labels:  android-app, android-application, android-development, android-ui
Android Inappbilling
A sample which uses Google's Play Billing Library and it does InApp Purchases and Subscriptions.
Stars: ✭ 114 (-79.2%)
Mutual labels:  android-app, android-application, android-development, android-ui
media-picker
Easy customizable picker for all your needs in Android application
Stars: ✭ 167 (-69.53%)
Mutual labels:  android-development, android-application, android-ui, android-app
AndroidBatteryStats
Displays all battery stats of an Android device using broadcast receiver.
Stars: ✭ 20 (-96.35%)
Mutual labels:  android-development, android-application, android-ui, android-app
ToDo
Android application to quickly add tasks and reminders.
Stars: ✭ 13 (-97.63%)
Mutual labels:  android-development, android-application, android-app
Android Ecosystem Cheat Sheet
πŸ€–Android Ecosystem Cheatsheet 2020
Stars: ✭ 488 (-10.95%)
Mutual labels:  android-application, android-development, android-ui
SeatLayout
A seat selection library for Android with an example for selecting seats for flights, sports venue, theatres, etc
Stars: ✭ 30 (-94.53%)
Mutual labels:  android-application, android-ui, android-app

Super Bottom Sheet

Android native bottom sheet on steroids πŸ’ͺ

Build Status jitpack api

Summary

This library allows you to display the bottom sheets in your application with the bonus of animating the color of the status bar and the upper rounded corners while scrolling.

Download

This library is available in jitpack, so to use it you need to add the above statement to your root build.gradle:

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

Add the dependency:

dependencies {
    implementation 'com.github.andrefrsousa:SuperBottomSheet:2.0.0'
}

Sample Project

We have a sample project in Kotlin that demonstrates the use of the library here.

Use

It is recommended that you review the sample project to get a full understanding of all the features offered by the library. To create a bottom sheet in your project, you only need to extend SuperBottomSheetFragment.

Example:

class MySheetFragment : SuperBottomSheetFragment() {

    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        super.onCreateView(inflater, container, savedInstanceState)
        return inflater.inflate(R.layout.fragment_demo_sheet, container, false)
    }
}

Adjustments

This is a group of general properties that you can define. These properties are applied to the entire SuperBottomSheet in your project.

// The set of DIM applied to the background from 0 to 1.
<attr name="superBottomSheet_dim" format="float"/>  

// Background color of the sheet.
<attr name="superBottomSheet_backgroundColor" format="color"/>

// To corner radius to be applied. 0 if you want none.
<attr name="superBottomSheet_cornerRadius" format="dimension"/>  

// Enable or disable the status bar animation. Default value is true.
<attr name="superBottomSheet_animateStatusBar" format="boolean"/>

// Enable or disable the radius animation. Default is true.
<attr name="superBottomSheet_animateCornerRadius" format="boolean"/>

// Enable this option if you want to skip the collapse state. Default value is false.
<attr name="superBottomSheet_alwaysExpanded" format="boolean"/>

// Default is true.
<attr name="superBottomSheet_cancelableOnTouchOutside" format="boolean"/>

// Default is true.
<attr name="superBottomSheet_cancelable" format="boolean"/>

//  Color of the status bar. The default uses the attribute value colorDark.
<attr name="superBottomSheet_statusBarColor" format="color"/>  

// The height of the bottom sheet when it is collapsed.
<attr name="superBottomSheet_peekHeight" format="dimension"/>

// The height of the bottom sheet when it is expanded. Default value is match_parent (-1).
<attr name="superBottomSheet_expandedHeight" format="enum">
	<enum name="match_parent" value="-1" />
        <enum name="wrap_content" value="-2" />
</attr>

If you want to change the properties of a single bottom sheet you can override these methods:

fun getPeekHeight(): Int {
    // Your code goes here
}

fun getDim(): Float {
    // Your code goes here
}

fun getBackgroundColor(): Int {
   // Your code goes here
}

fun getStatusBarColor(): Int {
    // Your code goes here
}

fun getCornerRadius(): Float {
    // Your code goes here
}

fun isSheetAlwaysExpanded(): Boolean {
    // Your code goes here
}

fun isSheetCancelableOnTouchOutside(): Boolean {
    // Your code goes here
}

fun isSheetCancelable(): Boolean {
    // Your code goes here
}

fun animateCornerRadius(): Boolean {
    // Your code goes here
}

fun animateStatusBar(): Boolean {
    // Your code goes here
}

fun getExpandedHeight(): Int {
    // Your code goes here
}


License

Copyright (c) 2018 AndrΓ© Sousa  

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].