/Alerter

An Android Alerting Library

Primary LanguageJavaMIT LicenseMIT

Alerter

Icon

Play Store Demo

General

Download

Android Arsenal

This library aims to overcome the limitations of Toasts and Snackbars, while reducing the complexity of your layouts.

Default Alert

A customisable Alert view is dynamically added to the Decor View of the Window, overlaying all content.

Gradle

dependencies {
    implementation 'com.tapadoo.android:alerter:2.0.6'
}

Usage

With simplicity in mind, the Alerter employs the builder pattern to facilitate easy integration into any app.

From an Activity -

Alerter.create(this)
       .setTitle("Alert Title")
       .setText("Alert text...")
       .show();

Or from a Fragment -

Alerter.create(getActivity())
       .setTitle("Alert Title")
       .setText("Alert text...")
       .show();

To check if an alert is showing -

Alerter.isShowing();

To hide a currently showing Alert -

Alerter.hide();

Customisation

Background Colour

Alerter.create(this)
       .setTitle("Alert Title")
       .setText("Alert text...")
       .setBackgroundColorRes(R.color.colorAccent) // or setBackgroundColorInt(Color.CYAN)
       .show();

Coloured Alert

Icon

Alerter.create(this)
       .setText("Alert text...")
       .setIcon(R.drawable.alerter_ic_mail_outline)
       .setIconColorFilter(0) // Optional - Removes white tint
       .show();

Custom Icon Alert

On screen duration, in milliseconds

Alerter.create(this)
       .setTitle("Alert Title")
       .setText("Alert text...")
       .setDuration(10000)
       .show();

Without title

Alerter.create(this)
       .setText("Alert text...")
       .show();

Text Only Alert

Adding an On Click Listener

 Alerter.create(ExampleActivity.this)
        .setTitle("Alert Title")
        .setText("Alert text...")
        .setDuration(10000)
        .setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(ExampleActivity.this, "OnClick Called", Toast.LENGTH_LONG).show();
            }
        })
        .show();

On Click Alert

Verbose text

 Alerter.create(ExampleActivity.this)
        .setTitle("Alert Title")
        .setText("The alert scales to accommodate larger bodies of text. " +
                 "The alert scales to accommodate larger bodies of text. " +
                 "The alert scales to accommodate larger bodies of text.")
        .show();

Verbose Alert

Visibility Callbacks

 Alerter.create(ExampleActivity.this)
        .setTitle("Alert Title")
        .setOnShowListener(new OnShowAlertListener() {
            @Override
            public void onShow() {
                Toast.makeText(ExampleActivity.this, "Alert Shown", Toast.LENGTH_LONG).show();
            }
        })
        .setOnHideListener(new OnHideAlertListener() {
            @Override
            public void onHide() {
                Toast.makeText(ExampleActivity.this, "Alert Hidden", Toast.LENGTH_LONG).show();
            }
         })
        .show();

Custom Fonts and Text Appearance

 Alerter.create(ExampleActivity.this)
                .setTitle("Alert Title")
                .setTitleAppearance(R.style.AlertTextAppearance_Title)
                .setTitleTypeface(Typeface.createFromAsset(getAssets(), "Pacifico-Regular.ttf"))
                .setText("Alert text...")
                .setTextAppearance(R.style.AlertTextAppearance_Text)
                .setTextTypeface(Typeface.createFromAsset(getAssets(), "ScopeOne-Regular.ttf"))
                .show();

Verbose Alert

Swipe to Dismiss

 Alerter.create(ExampleActivity.this)
                .setTitle("Alert Title")
                .setText("Alert text...")
                .enableSwipeToDismiss()
                .show();

Verbose Alert

Progress Bar

Alerter.create(ExampleActivity.this)
                .setTitle("Alert Title")
                .setText("Alert text...")
                .enableProgress(true)
                .setProgressColorRes(R.color.colorAccent)
                .show();

Verbose Alert

Sample

Clone this repo and check out the app module.

Licence

See the LICENSE file for license rights and limitations (MIT).

Copyright 2017 Tapadoo, Dublin.

Alt Text