floating-layout-android

Floating Layout for android platform.

sample1

sample2

Example project floating-video-player-android

Build

Step 1. Add the JitPack repository to your build file
allprojects {
    repositories {
        maven { url "https://jitpack.io" }
    }
}
Step 2. Add the dependency
dependencies {
    implementation 'com.github.HamedTaherpour:floating-layout-android:1.1.0'
}

Usage

Manifest

Step 1. Add permission and service to your manifest file
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

<application>
    <service android:name="io.hamed.floatinglayout.FloatingLayoutService" />
</application>

Layout.xml

Step 2. Create layout and don't forget add id (root_container) like this
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <FrameLayout
        android:id="@+id/root_container"
        android:layout_width="250dp"
        android:layout_height="200dp">

        ....

    </FrameLayout>

</FrameLayout>

Java

Step 3. Create FloatingLayout
FloatingLayout floatingLayout = new FloatingLayout(this, R.layout.floating_layout, new FloatingLayout.CallBack() {
    @Override
    public void onClickListener(int resourceId) {
    
    }

    @Override
    public void onCreateListener(View view) {
    }
    
    @Override
    public void onCloseListener() {
    
    }
});
floatingLayout.create();

For handle on click you need add tag (Click)

android:tag="Click"

Somting like this

<Button
    android:id="@+id/btn_close"
    android:layout_width="40dp"
    android:layout_height="40dp"
    android:tag="Click" />

GitHub