All Projects → 3llomi → Hidely

3llomi / Hidely

Licence: other
Custom Views that can hide/show a View with some Animations (inspired by the Android FAB)

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Hidely

view-admin-as
View the WordPress admin as a different role, switch between users, temporarily change your capabilities, set default screen settings for roles, manage your roles and capabilities.
Stars: ✭ 44 (-4.35%)
Mutual labels:  view
IndicatorView
IndicatorView Library For Android
Stars: ✭ 41 (-10.87%)
Mutual labels:  view
Observable
A generic ObservableObject for every property!
Stars: ✭ 41 (-10.87%)
Mutual labels:  view
kyoto
Golang SSR-first Frontend Library
Stars: ✭ 543 (+1080.43%)
Mutual labels:  view
crab
JavaScript library for building user interfaces with Custom Elements, Shadow DOM and React like API
Stars: ✭ 22 (-52.17%)
Mutual labels:  view
AndroidSamples
Android例子----View、指纹、Canvas、RecyclerView、BottomSheet、PopupWindow、Broadcast、Service、Rxjava、Retrofit、Handler等
Stars: ✭ 107 (+132.61%)
Mutual labels:  view
RDGliderViewController
Control for a floating view gliding over a ViewController
Stars: ✭ 31 (-32.61%)
Mutual labels:  view
MultiPartProgressbar
A progressbar which contains different parts of progress.
Stars: ✭ 15 (-67.39%)
Mutual labels:  view
shtm
No description or website provided.
Stars: ✭ 21 (-54.35%)
Mutual labels:  view
nuts
Nuts and bolts for building cross-platform UI (HTML, Flutter, CLI) using Dart. Also screw frameworks (React, Vue, Angular).
Stars: ✭ 12 (-73.91%)
Mutual labels:  view
ShadowDrawable
为View 和 ViewGroup 添加阴影效果--Android,Add shadow for single view or viewgroup layout.
Stars: ✭ 22 (-52.17%)
Mutual labels:  view
drag-to-close
Android library that provides a view group which allows to finish an activity by dragging a view.
Stars: ✭ 69 (+50%)
Mutual labels:  view
LovelyView
🔗A view that combines pictures and texts.(一个组合图片和文本的view).
Stars: ✭ 68 (+47.83%)
Mutual labels:  view
SlipperyLayout
A layout that supports sliding.
Stars: ✭ 44 (-4.35%)
Mutual labels:  view
Hyena
鬣狗快速开发库(2018年6月停止维护)
Stars: ✭ 21 (-54.35%)
Mutual labels:  view
anchored-behavior
A CoordinatorLayout Behavior to anchor views with an animation.
Stars: ✭ 17 (-63.04%)
Mutual labels:  view
SwiftyWave
Siri Waves View in Swift
Stars: ✭ 66 (+43.48%)
Mutual labels:  view
MVVM-Design-Pattern-Demo
An Xcode 9 project written in Swift 4 code designed using the MVVM design pattern, truly extolling the virtues of MVVM over MVC.
Stars: ✭ 31 (-32.61%)
Mutual labels:  view
Xamarin.BlurView
Dynamic iOS-like blur of underlying Views for Android.
Stars: ✭ 26 (-43.48%)
Mutual labels:  view
Custom-Grid-View
Custom Drag and Drop Grid for Home Assistant
Stars: ✭ 103 (+123.91%)
Mutual labels:  view

Hidely

Custom Views that can hide/show a View with some Animations (inspired by the Android FAB)

Demo

Install

dependencies {
    compile 'com.devlomi.hidely:hidely:1.0.0'
}

Usage

Basic Usage

use one of the following Hidely Views

  • HidelyButton

  • HidelyImageButton

  • HidelyImageView

  • HidelyView

  • HidelyFrameLayout

  • HidelyRelativeLayout

  • HidelyLinearLayout

OR

if you want to make your own custom view then :

  1. make your own custom view and make it implements HidelyInterface this will give you the 4 methods show() , hide() ,isShowing() and setAnimationCallbacks()
  2. make an Object from HidelyCore and pass the view as a Parameter: hidelyCore = new HidelyCore(this);
  3. fill the 4 methods with hidely core like this
   @Override
    public void show() {
        if (hidelyCore != null)
            hidelyCore.show();
    }

    @Override
    public void hide() {
        if (hidelyCore != null)
            hidelyCore.hide();
    }

    @Override
    public boolean isShowing() {
        return hidelyCore == null ? false : hidelyCore.isShowing();
    }

    @Override
    public void setAnimationCallbacks(HidelyAnimationCallbacks animationCallbacks) {
        hidelyCore.setAnimationListener(animationCallbacks);
    }

XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".SimpleExample">

    <com.devlomi.hidely.hidelyviews.HidelyImageButton
        android:id="@+id/simple_example_hidely"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="@drawable/circle_bg"
        android:padding="50dp"
        android:src="@drawable/ic_add" />



    <Button
        android:id="@+id/change_button_state"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/simple_example_hidely"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="8dp"
        android:text="CHANGE BUTTON STATE" />

</RelativeLayout>

Java

        HidelyImageButton hidelyImageButton = findViewById(R.id.simple_example_hidely);
        Button changeButtonState = findViewById(R.id.change_button_state);

        changeButtonState.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //check if button is Showing
                if (hidelyImageButton.isShowing())
                //hide button
                    hidelyImageButton.hide();
                else
                //show button
                    hidelyImageButton.show();
            }
        });

Listen for Animation Callbacks

 hidelyImageButton.setAnimationCallbacks(new HidelyAnimationCallbacks() {
            @Override
            public void onAnimationStart() {
                
            }

            @Override
            public void onAnimationEnd() {

            }
        });
        
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].