Android中有趣的Toast

Toast在Android中的定义就是大家所熟悉的黑色半透明提示,我们已经对其了解,但是黑色半透明怎么可能满足我们呢。所以就出现了两个很好的Toast库

    compile 'com.github.GrenderG:Toasty:1.2.5'
    compile 'com.muddzdev:styleabletoast:1.0.9'

这个两个是在GitHub中Star很高的项目。

先说第一个Toasty,在项目中为我们提供了很多的种类,也支持自定义。

普通带图标
                Drawable icon = getResources().getDrawable(R.drawable.ic_pets_white_48dp);
                Toasty.normal(MainActivity.this, "普普通通", icon).show();
普通.png
          Toasty.normal(MainActivity.this, "普普通通").show();
失败
Toasty.error(MainActivity.this, "失败.", Toast.LENGTH_SHORT, true).show();
成功
Toasty.success(MainActivity.this, "成功!", Toast.LENGTH_SHORT, true).show();
警告.png
 Toasty.warning(MainActivity.this, "内有恶犬.", Toast.LENGTH_SHORT, true).show();
信息
 Toasty.info(MainActivity.this, "这里有一条信息给你.", Toast.LENGTH_SHORT, true).show();
格式化部分信息
    Toasty.info(MainActivity.this, getFormattedMessage()).show();
    private CharSequence getFormattedMessage() {
        final String prefix = "看我 ";
        final String highlight = "不打你";
        final String suffix = " 好吧";
        SpannableStringBuilder ssb = new SpannableStringBuilder(prefix).append(highlight).append(suffix);
        int prefixLen = prefix.length();
        ssb.setSpan(new StyleSpan(BOLD_ITALIC),
                prefixLen, prefixLen + highlight.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        return ssb;
    }
超酷炫
  Toasty.Config.getInstance()
                        .setTextColor(Color.GREEN)
                        .setToastTypeface(Typeface.createFromAsset(getAssets(), "PCap Terminal.otf"))
                        .apply();
                Toasty.custom(MainActivity.this, "炸锅卖铁贼酷炫 It is OK", getResources().getDrawable(R.drawable.laptop512),
                        Color.BLACK, Toast.LENGTH_SHORT, true, true).show();
                Toasty.Config.reset();//此配置仅这次使用

第二个StyleableToast,自定义更方便

关闭飞行模式
 StyleableToast.makeText(this, "关闭飞行模式", Toast.LENGTH_LONG, R.style.StyleableToast).show();
软件更新
 StyleableToas styleableToast = new StyleableToast
                        .Builder(this)
                        .text("软件有新的更新")
                        .textColor(Color.WHITE)
                        .icon(R.drawable.ic_file_download)
                        .backgroundColor(Color.parseColor("#23ad33"))
                        .build();
较普通
   styleableToast = new StyleableToast
                        .Builder(this)
                        .duration(Toast.LENGTH_LONG)
                        .text("你的系统升级成功")
                        .textColor(Color.WHITE)
                        .typeface(Typeface.createFromAsset(getAssets(), "dosis.otf"))
                        .backgroundColor(Color.parseColor("#cc3784"))
                        .build();
白底
styleableToast = new StyleableToast
                        .Builder(this)
                        .text("感谢您的捐赠!")
                        .textColor(Color.parseColor("#6063b2"))
                        .strokeWidth(2)
                        .duration(Toast.LENGTH_LONG)
                        .strokeColor(Color.parseColor("#989ad1"))
                        .backgroundColor(Color.WHITE)
                        .build();
警告
                styleableToast = new StyleableToast
                        .Builder(this)
                        .icon(R.drawable.ic_overheating)
                        .text("手机过热!")
                        .textBold()
                        .textColor(Color.parseColor("#FFDA44"))
                        .cornerRadius(5)
                        .build();
动起来
                styleableToast = new StyleableToast
                        .Builder(this)
                        .duration(Toast.LENGTH_LONG)
                        .icon(R.drawable.ic_autorenew_black_24dp)
                        .spinIcon()
                        .text("下载信息")
                        .textColor(Color.WHITE)
                        .backgroundColor(Color.parseColor("#184c6d"))
                        .build();

欢迎大家互相交流,以上代码在
https://github.com/primerToforget/ToaseyTest
官方GitHub
https://github.com/GrenderG/Toasty
https://github.com/Muddz/StyleableToast

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,901评论 25 709
  • 一.榜单介绍 排行榜包括四大类: 单一框架:仅提供路由、网络层、UI层、通信层或其他单一功能的框架 混合开发框架:...
    伟子男阅读 10,631评论 0 161
  • 我应该有空练练毛笔字的, 我应该有空翻看买过的书, 我应该十天读一本书, 我应该把时间安排好, 在弹琴的时候要排除...
    芒果果呦阅读 1,436评论 0 1
  • 经过百转千回的折磨之后,在人到中年时安定了下来。过去的种种不幸再也不被提起,一切不公平的过往都风轻云淡了。那一年恰...
    雪蓉阅读 2,563评论 0 0
  • 呵,如此真实的梦呦! 它的启示又是如此的浅显直白 可为什么又不让我清楚察觉呢? 我的上帝 请你庇佑我 让我在患难之...
    来梦sunraise阅读 1,495评论 0 3

友情链接更多精彩内容