7个最好的Android本机Toast通知替换库

本文概述

尽管大多数Toast通知库都已过时, 但已改用包含Toast的新设计支持库。由于这个原因, 不再积极维护许多库的开发, 但是它们的工作相当不错(还有其他项目仍在维护中)!如果你正在寻找建议使用哪个第三方库在Android中实现自定义Toast通知的建议, 那么你来对地方了。

在此顶部, 我们将与你共享7个最不重要的库, 以构建自定义/默认敬酒通知, 以显示在你的本机android应用程序中。

7. Dynamic Toasts

Dynamic Toasts

一个简单的库, 可在Android 9+(姜饼或以上)设备上显示带有图标和文字的主题Toast。从v0.4.0开始, 它使用26.x.x支持库, 因此, 最低SDK将为Android 14+(ICS或更高版本)。从v2.0.0开始, 它使用AndroidX, 因此, 请先将你的项目迁移到AndroidX。它有几种根据需要显示 Toasty的方法。每个方法都返回一个Toast对象, 可以进一步对其进行自定义。用于自定义Toast的可选配置, 例如自定义背景色或可绘制, 自定义文本大小, 字体或图标大小等。可以在应用程序中的任何位置调用各种方法以进行自定义。

DynamicToast.Config.getInstance()
    // Background color for default toast.
    .setDefaultBackgroundColor(@ColorInt int defaultBackgroundColor)
    // Tint color for default toast.
    .setDefaultTintColor(@ColorInt int defaultTintColor)
    // Background color for error toast.
    .setErrorBackgroundColor(@ColorInt int errorBackgroundColor)
    // Background color for success toast.
    .setSuccessBackgroundColor(@ColorInt int successBackgroundColor)
    // Background color for warning toast.
    .setWarningBackgroundColor(@ColorInt int warningBackgroundColor)
    // Custom icon for error toast. Pass `null` to use default icon.
    .setErrorIcon(@Nullable Drawable errorIcon)
    // Custom icon for success toast. Pass `null` to use default icon.
    .setSuccessIcon(@Nullable Drawable successIcon)
    // Custom icon for warning toast. Pass `null` to use default icon.
    .setWarningIcon(@Nullable Drawable warningIcon)
    // Disable icon for all the toasts.
    .setDisableIcon(boolean disableIcon)
    // Custom icon size in `pixels` for all the toasts.
    .setIconSize(int iconSize)
    // Custom text size in `SP` for all the toasts.
    .setTextSize(int textSize)
    // Custom text typeface for all the toasts. Pass `null` to use system typeface.
    .setTextTypeface(@Nullable Typeface textTypeface)
    // Custom background drawable for all the toasts. Pass `null` to use default background.
    .setToastBackground(@Nullable Drawable toastBackground)
    // Apply customisations.
    .apply();

6. Noty

Noty Toast Android

一个简单的库, 用于为Android创建动画警告/对话框/警报。

5. SimpleToast

SimpleToast

SimpleToast是Android的通知库(例如Toast)。该API与Toast API一样简单。使用默认图标为任何CharSequence创建一个SimpleToast:

SimpleToast.ok(Context, CharSequence);
SimpleToast.error(Context, CharSequence);
SimpleToast.info(Context, CharSequence);
SimpleToast.muted(Context, CharSequence);
SimpleToast.warning(Context, CharSequence);

4. StyleableToast

StyleableToast

StyleableToast是一个Android库, 可通过多种样式选项将标准Toast提升到一个新的水平。通过代码或在styles.xml中使用样式来设置你的敬酒样式。

3. TastyToast

TastyToast Android库

TastyToast是一个有用的库, 可实现自定义Android Toast, 这些Toast看起来很漂亮, 但没有原生的Toast令人讨厌。安装库之后, 你可以像下面这样使用Toast:

import com.sdsmdg.tastytoast.TastyToast;

// 1. Success message
TastyToast.makeText(
    getApplicationContext(), "Success message !", TastyToast.LENGTH_LONG, TastyToast.SUCCESS
);

// 2. Warning message
TastyToast.makeText(
    getApplicationContext(), "Warning message !", TastyToast.LENGTH_LONG, TastyToast.WARNING
);

// 3. Error message
TastyToast.makeText(
    getApplicationContext(), "Error message !", TastyToast.LENGTH_LONG, TastyToast.ERROR
);

// 4. Info message
TastyToast.makeText(
    getApplicationContext(), "Info message !", TastyToast.LENGTH_LONG, TastyToast.INFO
);

// 5. Default message
TastyToast.makeText(
    getApplicationContext(), "Default message !", TastyToast.LENGTH_LONG, TastyToast.DEFAULT
);

// 6. Confusion message
TastyToast.makeText(
    getApplicationContext(), "Confusion message !", TastyToast.LENGTH_LONG, TastyToast.CONFUSING
);

2. SuperToasts

SuperToasts Android库

SuperToasts库增强并建立在Android Toast类的基础上。该库包括对上下文敏感的SuperActivityToasts(可显示进度和处理按钮单击)的支持, 以及对上下文无关的SuperToasts(对标准Android Toast类提供许多自定义选项的支持)。你可以这样创建一个 SuperToasts:

SuperActivityToast.create(getActivity(), new Style(), Style.TYPE_BUTTON)
    .setButtonText("UNDO")
    .setButtonIconResource(R.drawable.ic_undo)
    .setOnButtonClickListener("good_tag_name", null, onButtonClickListener)
    .setProgressBarColor(Color.WHITE)
    .setText("Email deleted")
    .setDuration(Style.DURATION_LONG)
    .setFrame(Style.FRAME_LOLLIPOP)
    .setColor(PaletteUtils.getSolidColor(PaletteUtils.MATERIAL_PURPLE))
    .setAnimations(Style.ANIMATIONS_POP).show();

1. Toasty

Toasty Android Toast库

Toasty是一个简单的Android库, 可让你使用普通的Toast, 但使用类固醇。你可以将其添加到模块的build.gradle文件中(确保版本与JitPack匹配), 仅此而已。每个方法总是返回一个Toast对象, 因此你可以自定义Toast得多。要显示错误的Toast:

Toasty.error(yourContext, "This is an error toast.", Toast.LENGTH_SHORT, true).show();

要显示成功的Toast:

Toasty.success(yourContext, "Success!", Toast.LENGTH_SHORT, true).show();

要显示信息Toast:

Toasty.info(yourContext, "Here is some info for you.", Toast.LENGTH_SHORT, true).show();

要显示警告Toast:

Toasty.warning(yourContext, "Beware of the dog.", Toast.LENGTH_SHORT, true).show();

要显示通常的Toast:

Toasty.normal(yourContext, "Normal toast w/o icon").show();

要显示带有图标的常用Toast:

Toasty.normal(yourContext, "Normal toast w/ icon", yourIconDrawable).show();

你还可以使用custom()方法创建自定义的Toasts:

Toasty.custom(yourContext, "I'm a custom Toast", yourIconDrawable, tintColor, duration, withIcon, shouldTint).show();

如果你知道另一个很棒的开源库, 该库可让你在android本机应用程序中实现类似Toast的通知, 请在注释框中与社区共享。

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?