Git Product home page Git Product logo

slidemenulayout's Introduction

SlideMenuLayout

Introduction

An android slide menu that supports left and right swipes and slides with parallax.
一个支持左右滑动并带有视差滑动效果的安卓滑动菜单控件。(中文版入口)
Platform SDK

Demo

Encapsulate the sliding nesting of different scenarios.

Features

  • Support for sliding direction configuration
  • Can be used as ViewGroup
  • Handle the sliding conflicts in each scenarios
  • Option to click on content view to close menu when it's opening
  • Option to dim the content view automatically
  • Option to toggle the parallax effect

Version

name SlideMenuLayout
latest Download

Configure

Maven

<dependency>
  <groupId>com.justkiddingbaby</groupId>
  <artifactId>slidemenu</artifactId>
  <version>the latest version</version>
  <type>pom</type>
</dependency>

JCenter

First. add to project build.gradle

repositories {
    jcenter()
}

Second. add to module build.gradle

compile 'com.justkiddingbaby:slidemenu:the latest version'

Attributes instruction

attribute instruction value
slideMode sliding mode left right both none
slidePadding the content view padding when slide menu is opened dimension
slideTime the time of slide menu open,the default value is 800ms integer
parallax option to toggle the parallax effect,default is true boolean
contentAlpha the alpha of shadow for ContentView when menu is opened.(0<alpha<=1.0),default is 0.5f float
contentShadowColor the color of shadow for ContentView when menu is sliding,default is #000000 color
contentToggle option to click on content view to close menu when it's opening,default is false boolean
allowDragging option to enables or disables dragging for this view boolean

Function instruction

return function name instruction
void setSlideMode(int slideMode) set slide mode
void setSlidePadding(int slidePadding) set slide content padding when slide menu is open
void setSlideTime(int slideTime) set the time of opening slide menu
View getSlideLeftView() return left slide menu view
View getSlideRightView() return right slide menu view
View getSlideContentView() return content view
void toggleLeftSlide() open or close left slide menu
void openLeftSlide() open left slide menu
void closeLeftSlide() close left slide menu
boolean isLeftSlideOpen() return the result of left slide menu is open
void toggleRightSlide() open or close right slide menu
void openRightSlide() open right slide menu
void closeRightSlide() close right slide menu
boolean isRightSlideOpen() return the result of right slide menu is open
void setParallaxSwitch(boolean parallax) set is able to toggle the parallax effect
void setContentAlpha(float contentAlpha) set the alpha of shadow for ContentView when menu is opened.,1.0f means the effect is not abled
void setContentShadowColor(int color) set the color of shadow for ContentView when menu is sliding,default is #000000
void setContentToggle(boolean contentToggle) option to click on content view to close menu when it's opening.default is false
void setAllowTogging(boolean allowTogging) set the option for whether to allow drag slidemenu to open/close slide menu.default is true.
void addOnSlideChangedListener(OnSlideChangedListener listener) Register a callback to be invoked when this slide is changed.

Usage

use in the layout

 <com.jkb.slidemenu.SlideMenuLayout
        android:id="@+id/mainSlideMenu"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/white"
        app:slideMode="both">
        <include layout="@layout/content_menu_left" />
        <include layout="@layout/content_menu_right" />
        <include layout="@layout/content_menu_content" />
 </com.jkb.slidemenu.SlideMenuLayout>

Mind

when you use SlideMenuLayout in layout,it can only host three child view,and the left slide menu view and the right slide menu view must add before the content view (for prevent the right slide menu from overlapping).
if slideMode is both then the SlideViewLayout must host three child views.

Release history

v1.3.0(2017/12/25)

1、Add feature: Enables or disables dragging for this view.
2、Add feature: Add listener to register a callback to be invoked when this slide is changed.

v1.2.2(2017/12/18)

1、Fix issue#5

v1.2.1(2017/9/18)

1、Intercept the touch action of content view when contentToggle attribute's value is true.

v1.2.0(2017/8/20)

1、Add feature: Option to click on content view to close menu when it's opening. 2、Add feature: Option to dim the content view automatically. 3、Add feature: Option to toggle the parallax effect.

v1.0.1(2017/6/29)

1、Update minSdkVersion to SDK 12.

v1.0.0(2017/6/8)

1、Release SlideMenuLayout,Handle the sliding conflicts in each scenarios.
2、Encapsulation demo.

License

This library is available under the MIT license. See the LICENSE file for more info.

slidemenulayout's People

Contributors

jingyeoh avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.