explaingit

umano/androidslidinguppanel

9,463JavaAudience · developerComplexity · 2/5Setup · easy

TLDR

A Java library for Android that adds a draggable bottom panel, like the info strip in Google Maps, which slides up to reveal a full detail view, with parallax effects, anchor points, and scroll support inside the panel.

Mindmap

mindmap
  root((repo))
    Layout
      Two child views
      Main content
      Sliding panel
    Features
      Drag to expand
      Parallax effect
      Anchor midpoint
      Scroll inside panel
    Customization
      Drag handle area
      Dim overlay
      Slide from top
    State
      Read panel state
      State change listener
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Add a Google Maps-style sliding info panel to an Android navigation or location app

USE CASE 2

Build a music player where a mini player strip at the bottom expands into a full playback screen

USE CASE 3

Create a detail view that slides up over a map or list without replacing the current screen

Tech stack

JavaAndroid

Getting it running

Difficulty · easy Time to first run · 30min

Project is no longer actively maintained, bug fixes require submitting a pull request rather than opening an issue.

No license information is provided in the explanation.

In plain English

Android Sliding Up Panel is a Java library for Android apps that adds a panel anchored to the bottom of the screen which the user can drag upward to expand. You have probably seen this pattern in apps like Google Maps, where a small info strip sits at the bottom and sliding it up reveals a full detail view, or in music apps where a mini player at the bottom expands into the full player. This library gives Android developers a ready-made version of that interaction without needing to build it from scratch. To use it, you wrap your existing screen layout with a special container element from the library. That container expects exactly two child views: the first is your main screen content, and the second is the panel that will slide up over it. The panel starts as a partially visible strip at the bottom and expands when the user drags it. You control how tall that initial strip is, what the expanded state looks like, and whether the panel overlaps the main content or pushes it out of the way. The library includes a range of customization options. You can restrict dragging to a specific part of the panel rather than the whole surface, add a parallax effect to the background as the panel moves, set an intermediate anchor point partway up the screen (like Google Maps does), and control the dimming of the background content as the panel expands. There is also support for scrollable content inside the panel, such as lists or scroll views, so that scrolling within the panel does not conflict with the dragging gesture. The panel state can be read and changed from code, and you can attach a listener to respond when the panel moves or reaches a new state. The library also supports sliding down from the top instead of up from the bottom by changing one layout attribute. The README notes that the project is no longer actively maintained and that bug reports should come as pull requests rather than issues. It has been used in apps including Soundcloud and Dropbox Paper.

Copy-paste prompts

Prompt 1
I'm building an Android app in Java and want a sliding bottom panel like Google Maps. Show me how to wrap my layout in SlidingUpPanelLayout with two child views and set the peek height.
Prompt 2
How do I add an anchor point to the Android Sliding Up Panel so it stops partway up the screen, similar to how Google Maps shows search results?
Prompt 3
In my Android app using SlidingUpPanelLayout, how do I put a RecyclerView inside the panel so scrolling the list does not conflict with the drag gesture?
Prompt 4
Show me how to attach a listener to SlidingUpPanelLayout that triggers an animation when the panel fully expands to the top.
Open on GitHub → Explain another repo

← umano on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.