DEV Community

Akshay
Akshay

Posted on

I built a Modern Android Toast Library that works properly on Android 11+ (with icons, colors & Version Catalog support)

πŸš€ I built a Modern Android Toast Library that works properly on Android 11+ (with icons, colors & Version Catalog support)

Android’s default Toast customization stopped working reliably after Android 11 (API 30).
Setting background colors directly on Toast views is now restricted β€” which makes many old solutions break.

So I built a lightweight modern alternative:

πŸ‘‰ Toast Library

It provides:

βœ… Success / Error / Info / Default variants
🎨 Colored rounded backgrounds
🧩 Built-in vector icons
πŸ“ Gravity control (TOP / CENTER / BOTTOM)
πŸ“¦ JitPack installation
🧰 Version Catalog support (latest Android Studio)
⚑ Lightweight & dependency-free


πŸ“¦ Installation (JitPack)

Step 1 β€” Add JitPack repository

Inside settings.gradle.kts

pluginManagement {
    repositories {
        google()
        mavenCentral()
        maven("https://jitpack.io")
    }
}

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)

    repositories {
        google()
        mavenCentral()
        maven("https://jitpack.io")
    }
}
Enter fullscreen mode Exit fullscreen mode

⭐ Recommended: Version Catalog setup (Latest Android Studio)

Inside:

gradle/libs.versions.toml
Enter fullscreen mode Exit fullscreen mode

Add:

[versions]
toastlib = "v2.0.0"

[libraries]
toastlib = { module = "com.github.TutorialsAndroid:Toast-Library", version.ref = "toastlib" }
Enter fullscreen mode Exit fullscreen mode

Then inside:

app/build.gradle.kts
Enter fullscreen mode Exit fullscreen mode
dependencies {
    implementation(libs.toastlib)
}
Enter fullscreen mode Exit fullscreen mode

Alternative: Direct dependency

dependencies {
    implementation("com.github.TutorialsAndroid:Toast-Library:v2.0.0")
}
Enter fullscreen mode Exit fullscreen mode

πŸš€ Usage Examples

Success Toast

ToastLib.success(this, "Saved successfully");
Enter fullscreen mode Exit fullscreen mode

Error Toast

ToastLib.error(this, "Something went wrong");
Enter fullscreen mode Exit fullscreen mode

Info Toast

ToastLib.info(this, "Welcome back!");
Enter fullscreen mode Exit fullscreen mode

Default Toast

ToastLib.show(this, "Default toast");
Enter fullscreen mode Exit fullscreen mode

πŸ“ Custom Position Example

ToastLib.show(
        this,
        "Top message",
        ToastLib.ToastType.INFO,
        Gravity.TOP
);
Enter fullscreen mode Exit fullscreen mode

πŸ“± Why this library exists

Older approaches:

toast.getView().setBackgroundColor(...)
Enter fullscreen mode Exit fullscreen mode

no longer work consistently on modern Android versions.

This library solves that using:

βœ” custom layouts
βœ” vector icons
βœ” Material-style backgrounds
βœ” Android 11+ compatibility


πŸ“¦ GitHub Repo

⭐ Check it out here:

https://github.com/TutorialsAndroid/Toast-Library

Feedback and contributions welcome!


πŸ›£ Roadmap

Next updates coming soon:

✨ toast animations
✨ builder pattern API
✨ dark mode support
✨ custom icon support


If this helps your Android projects, consider giving the repo a ⭐

Top comments (0)