ChromeMenu

Additional

Language
Java
Version
0.0.2 (Dec 2, 2018)
Created
Nov 26, 2018
Updated
Dec 4, 2018
Owner
Reed (DeweyReed)
Contributor
Reed (DeweyReed)
1
Activity
Badge
Generate
Download
Source code
APK file

Blurb

ChromeMenu

The menu from Chromium Android appmenu. It can do this:

Notice the press, move, selection, up are finished in one gesture.

I love this design. It significantly improves the efficiency of using an app. So I dig into chromium, extract related code and pack them into this library.

Usage

  1. Install dependency

    implementation 'xyz.aprildown:chrome-menu:0.0.2'

  2. Set up touch listener

    val handler = AppMenuHandler(activity, listener, R.menu.menu)
    val helper = AppMenuButtonHelper(handler)
    btn.setOnTouchListener(helper)

    listener is an AppMenuPropertiesDelegate interface or use its abstract version AbstractAppMenuPropertiesDelegate()

  3. Handle click events

    All events are sent to activity's onOptionsItemSelected. So override it in the activity.

    From 0.0.2, click events are handled in the listener's onMenuItemClicked

  4. Check the sample for more customization.

More Usage

  • Change menu width

    Add this line to dimens.xml:

    <!-- 256dp is the original width -->
    <dimen name="menu_width">258dp</dimen>

Hmm...

If you wish to try to the original version from chromium, check out the from_chrome tag. After this tag, I've been adding extra code to make this library easier to use.