A tooltip/showcase library for Android re-written in Kotlin.

Related tags

Toast UglyTooltip
Overview

UglyTooltip

Based on another Showcase library. Being kotlinized, customized and refactored.

Installation

Project level gradle

allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}

App level gradle

dependencies {
	   implementation 'com.github.akndmr:UglyTooltip:v1.0.4-beta'
	}

How to

Init UglyTooltip with below custom properties.

You can set shouldShowIcons flag as false to show texts(previous and next) instead.

private fun initUglyTooltip() {
        tooltipDialog = TooltipBuilder()
            .setPackageName(packageName)
            .titleTextColorRes(R.color.white)
            .textColorRes(R.color.white)
            .shadowColorRes(color.shadow) // Overlay canvas color
            .titleTextSizeRes(dimen.title_size)
            .textSizeRes(dimen.text_normal)
            .spacingRes(dimen.spacing_normal)
            .backgroundContentColorRes(color.darker_gray) // Tooltip background color
            .circleIndicatorBackgroundDrawableRes(drawable.selector_circle)
            .prevString(string.previous)
            .nextString(nextStringText = "Sonraki") // Optional nextStringRes or nextStringText
            .finishString(finishStringText = "Bitir da!")
            .useCircleIndicator(true) 
            .clickable(true) // Click anywhere to continue
            .useArrow(true) // Optional tooltip pointing arrow
            .useSkipWord(false) // Optional tooltip skip option
            .setFragmentManager(this.supportFragmentManager)
            .lineColorRes(color.line_color) // Optional tooltip button seperator line color
            .lineWidthRes(dimen.line_width) // Optional tooltip button seperator line width
            .shouldShowIcons(true) // Optional tooltip next/prev icons
            .setTooltipRadius(dimen.tooltip_radius) //Optional tooltip corder radius
            .showSpotlight(true) //Optional spotlight
            .build()
    }

Create a list of TooltipObjects and show tooltip dialog.

(R.id.tvTest2), null, "No title, just description, simple text.", tooltipContentPosition = TooltipContentPosition.RIGHT ) ) tooltips.add( TooltipObject( findViewById(R.id.tvTest3), " an ImageView ", "This HTML description point to an ImageView as you can see.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.", tooltipContentPosition = TooltipContentPosition.LEFT ) ) tooltips.add( TooltipObject( findViewById(R.id.iv4), "This is a title", "This is a description, but a little longer than number 3 but shorter than number 5 that you will see soon." ) ) tooltips.add( TooltipObject( findViewById(R.id.tvTest), "This is a title", "This is a description, but a little longer than number 3 but shorter than number 5 that you will see soon." ) ) tooltips.add( TooltipObject( findViewById(R.id.iv5), "This is another title", "This HTML description point to an ImageView as you can see.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suo enim quisque studio maxime ducitur. Scio enim esse quosdam, qui quavis lingua philosophari possint; Animum autem reliquis rebus ita perfecit, ut corpus; Quo modo autem optimum, si bonum praeterea nullum est?" ) ) tooltips.add( TooltipObject( findViewById(R.id.iv6), "This is another one", "This description point to number 6. This is yellow text and this is white.", tooltipContentPosition = TooltipContentPosition.UNDEFINED, tintBackgroundColor = ResourcesCompat.getColor(resources, R.color.blue, null), null ) ) tooltips.add( TooltipObject( findViewById(R.id.tvTest4), " an ImageView ", "This HTML description point to an ImageView as you can see.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.", tooltipContentPosition = TooltipContentPosition.LEFT ) ) tooltipDialog?.show(this, supportFragmentManager, "SHOWCASE_TAG", tooltips) } ">
fun startUglyTooltips() {
        val tooltips: ArrayList<TooltipObject> = ArrayList()

        tooltips.add(
            TooltipObject(
                findViewById<ImageView>(R.id.iv3),
                null,
                "No title, just description, simple text."
            )
        )

        tooltips.add(
            TooltipObject(
                findViewById<TextView>(R.id.tvTest2),
                null,
                "No title, just description, simple text.",
                tooltipContentPosition = TooltipContentPosition.RIGHT
            )
        )

        tooltips.add(
            TooltipObject(
                findViewById<TextView>(R.id.tvTest3),
                "\"#FFC300\"> an ImageView ",
                "This HTML description point to \"#FFC300\"> an ImageView  as you can see.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.", tooltipContentPosition = TooltipContentPosition.LEFT ) ) tooltips.add( TooltipObject( findViewById<ImageView>(R.id.iv4), "This is a title", "This is a description, but a little longer than number 3 but shorter than number 5 that you will see soon." ) ) tooltips.add( TooltipObject( findViewById<TextView>(R.id.tvTest), "This is a title", "This is a description, but a little longer than number 3 but shorter than number 5 that you will see soon." ) ) tooltips.add( TooltipObject( findViewById<ImageView>(R.id.iv5), "This is another title", "This HTML description point to \"#FFC300\"> an ImageView as you can see.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suo enim quisque studio maxime ducitur. Scio enim esse quosdam, qui quavis lingua philosophari possint; Animum autem reliquis rebus ita perfecit, ut corpus; Quo modo autem optimum, si bonum praeterea nullum est?" ) ) tooltips.add( TooltipObject( findViewById<ImageView>(R.id.iv6), "This is another one", "This description point to number 6. \"#FFC300\"> This is yellow text and this is white.", tooltipContentPosition = TooltipContentPosition.UNDEFINED, tintBackgroundColor = ResourcesCompat.getColor(resources, R.color.blue, null), null ) ) tooltips.add( TooltipObject( findViewById<TextView>(R.id.tvTest4), "\"#FFC300\"> an ImageView ", "This HTML description point to \"#FFC300\"> an ImageView as you can see.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.", tooltipContentPosition = TooltipContentPosition.LEFT ) ) tooltipDialog?.show(this, supportFragmentManager, "SHOWCASE_TAG", tooltips) }
You might also like...
Context sensitive notifications for Android
Context sensitive notifications for Android

Crouton Context sensitive notifications for Android DEPRECATION NOTICE This library has passed it's prime and is now considered deprecated. With the A

In-layout notifications. Based on Toast notifications and article by Cyril Mottier (http://android.cyrilmottier.com/?p=773).
In-layout notifications. Based on Toast notifications and article by Cyril Mottier (http://android.cyrilmottier.com/?p=773).

Android AppMsg (Crouton) Library Implementation of in-layout notifications. Based on Toast notifications and article The making of Prixing #4: in-layo

An Android Toast replacement, similar to the one seen in the GMail app.

MessageBar An Android Toast replacement, similar to the one seen in the GMail app. Multiple messages can be posted in succession, and each message wil

Custom toasts with color and icon for Android.
Custom toasts with color and icon for Android.

Dynamic Toasts A simple library to display themed toasts with icon and text on Android 2.3 (API 9) and above devices. Since v0.4.0, it uses 26.x.x sup

Android Custom Toast
Android Custom Toast

Super Toast Library Written Purely in Kotlin ❤️ Usual Toast but with super powers!!! 💪 A Fully Customised and Customisable Toast. ]( https://android-

Android Toast For RTL Applications
Android Toast For RTL Applications

RTL-Toast Android library to show Toasts in a pretty RTL way Install Add it in your root build.gradle allprojects { repositories { ... ma

CuteToast is an Material Design Custom Toast for Android | Custom Material Design Toast
CuteToast is an Material Design Custom Toast for Android | Custom Material Design Toast

CuteToast is an Android Custom Toast library that could be used instead of Default Toast. It does everything as Toast but with some extra spice.

BiometricAuth - A simple project to show biometric authenticaation in android
BiometricAuth - A simple project to show biometric authenticaation in android

BiometricAuth a simple project to show biometric authenticaation in android link

Dead simple Android Tooltip Views
Dead simple Android Tooltip Views

TooltipView A dead simple way to to add tooltips to your Android app. com.venmo.view.TooltipView android:layout_width="wrap_content"

Membuat Custom Tooltip Marker Google Maps
Membuat Custom Tooltip Marker Google Maps

Custom-Tooltip-Marker Membuat Custom Tooltip Marker Google Maps Tutorial Build with Android Studio https://youtu.be/E8ND0YThNiU Tutorial Build with St

Tooltip Bubble is an information bubble creator tool.
Tooltip Bubble is an information bubble creator tool.

TooltipBubble It's a simple Tooltip. Installing Add the code block to your project allprojects { repositories { jcenter()

 PopupBarChart 📊 can shows a tooltip when user click on the bar 😍 🤩
PopupBarChart 📊 can shows a tooltip when user click on the bar 😍 🤩

PopupBarChart 📊 can shows a tooltip when user click on the bar 😍 🤩

A showcase music app for Android entirely written using Kotlin language

Bandhook Kotlin This project is a small replica of the app I developed some time ago. Bandhook can still be found on Play Store At the moment it will

A showcase music app for Android entirely written using Kotlin language

Bandhook Kotlin This project is a small replica of the app I developed some time ago. Bandhook can still be found on Play Store At the moment it will

An simple image gallery app utilizing Unsplash API to showcase modern Android development architecture (MVVM + Kotlin + Retrofit2 + Hilt + Coroutines + Kotlin Flow + mockK + Espresso + Junit)
An simple image gallery app utilizing Unsplash API to showcase modern Android development architecture (MVVM + Kotlin + Retrofit2 + Hilt + Coroutines + Kotlin Flow + mockK + Espresso + Junit)

Imagine App An simple image gallery app utilizing Unsplash API. Built with ❤︎ by Wajahat Karim and contributors Features Popular photos with paginatio

Modular Android architecture which showcase Kotlin, MVVM, Navigation, Hilt, Coroutines, Jetpack compose, Retrofit, Unit test and Kotlin Gradle DSL.

SampleCompose Modular Android architecture which showcase Kotlin, MVVM, Navigation, Hilt, Coroutines, Jetpack compose, Retrofit, Unit test and Kotlin

Android library to showcase/highlight the multiple views on same overlay
Android library to showcase/highlight the multiple views on same overlay

MultiLamp MultiLamp is simple and easy to use Android library to showcase/highlight the multiple views on the same overlay with some message. Gradle S

RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.
RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.

RoboDemo RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works. A sample is available in the download area of

RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.
RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.

RoboDemo RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works. A sample is available in the download area of

Releases(v1.0.6-beta)
Owner
Google Nanodegree holder | Android Enthusiast | Game Design&Development student at XAMK
null
An android library for easy implementation of Toasts in Android with easy customisation.

ToastTypeDecore ©️ A library for easy implementation of Toasts in Android with easy customisation. Latest Version : v2.1 Screenshots Success Toast1 Su

Aditya Bavadekar 1 Jul 7, 2022
Android : IamToast Another Toast library for Android

Android : IamToast Another Toast library for Android Warning. toast custom view is deprecated since android 11(R) Setup allprojects { repositories

null 2 Jun 12, 2022
A library that extends the Android toast framework.

SuperToasts Library The SuperToasts library enhances and builds upon the Android Toast class. This library includes support for context sensitive Supe

John Persano 2.7k Dec 29, 2022
🍞 The missing toast library for Android.

Literally Toast ?? A toast library for Android. Usage: ?? Use the LitToast to get lit and show your users a proper toast. LitToast.create(context, "My

David Voiss 229 Nov 25, 2022
Android library to create customizable floating animated toasts like in Clash Royale app

FloatingToast-Android An android library to make customisable floating animated toasts Getting Started In your build.gradle dependencies { impleme

Hariprasanth S 96 Dec 30, 2022
Toastie is a customizable Android toast library.

Toastie Getting Started Gradle Step 1. Add the JitPack repository to your build file Add it in your root build.gradle at the end of repositories: Note

Burak Fidan 36 Apr 3, 2021
Attractive, stylish and customizable toast library for Android.

FabToast min SDK 16 (Jelly Bean 4.1) written in Java To download the demo app for this library from Google Playstore so you can see it in action, clic

Dean Spencer 11 Feb 14, 2022
Customizable toast message library for Android

Android Custom Toast Message (SnToast) Customizable Toast Message Library For Android Add this in your root build.gradle file allprojects { reposito

null 9 Nov 15, 2021
A really simple library that help you to display a custom toast with many colors (for : success, warning, danger, info, dark, light, primary...etc ), or with rounded corners, or event with image.

CoolToast A really simple library that help you to display a custom toast with many colors (for : success, warning, danger, info, dark, light, primary

null 21 Dec 20, 2022
Custom Toast Library by Google Developer Student Club University of Brawijaya

GDSCToast Custom Toast Library by Google Developer Student Club University of Brawijaya Prerequisites For old version of gradle (before arctic fox upd

Kylix Eza S 6 Sep 15, 2022