你的位置:首页 > 操作系统

[操作系统]Android 彩色Toast实现

Android自定义边框背景颜色的Toast - Android移动开发..._红黑联盟

默认的Toast无法实现我们所需要的效果,那么我们只能自定义布局文件,另外Toast的背景...相关TAG标签 android开发 android教程 自定义边框属性 边框颜色...

【Android开发】toast提示 - flora - CSDN博客

修改Toast的外观 1、修改Toast的背景颜色 LinearLayout layout = (LinearLayout)...超简单实现Android自定义Toast(附源码) 12-01 1886 自定义 炫酷...

Android应用系列:仿MIUI的Toast动画效果实现 - 回忆安在 - 博客园

Android应用系列:仿MIUI的Toast动画效果实现 前言 相信有些人用过MIUI,会发现小米的Toast跟Android传统的Toast特么是不一样的,他会从底部向上飞入,然...

超简单实现Android自定义Toast示例(附源码)_Android_脚本之家

本篇文章主要介绍了超简单实现Android自定义Toast示例(附源码),具有一定的参考价值,有兴趣的可以了解一下。

Android中自定义特定颜色的Toast - u7的专栏 - CSDN博客

/** * 展示一个特定颜色的Toast * * @param message */ protected void ...在Android系统里通过Toast可以实现类似的弹窗效果。系统的Toast默认弹出到...

超简单实现Android自定义Toast(附源码) - 简书

超简单实现Android自定义Toast(附源码)尘少少少 关注 2017.06.01 18:10* 字数...本Demo有更新,去掉了对号和叉号图标,换用背景颜色来替代,感兴趣的同学可以克隆...

android 带颜色的Toast效果+Toast位置设置-Android吴sir-CSDN下载

android 带颜色的Toast效果+Toast位置设置

超简单实现Android自定义Toast(附源码) - CSDN博客

android:background=quot;@drawable/toast_backquot; android:gravity=quot;center_verticalquot; ...本Demo有更新,去掉了对号和叉号图标,换用背景颜色来替代,感兴趣的...

android从源码解析并实现各种Toast效果合集 - Losileeya - CSDN博客

安卓中为了给用户的友好提示,一般的表现形式为Dialog、PopWindow、Toast,自从Snackbar的出现绝对是秒杀Toast了,Snackbar不仅能够简单实现toast的效果...

Android:剖析源码,随心所欲控制Toast显示 - 码农叔叔 - 博客园

Toast相信大家都不会陌生吧,如果对于Toast不甚了解,可以参考我的上一篇博客《Android:谈一谈安卓应用中的Toast情节》,里面有关于Toast基础比较详细的...

Android Toast 设置到屏幕中间以及其他自定义Toast的实现方法

Android Toast用于在手机屏幕上向用户显示一条信息,一段时间后信息会自动消失。信息可以是简单的文本,也可以...

当Toast遇上色彩:Android第三方库Crouton学习笔记 - 个人文章 - ...

Toast大家都不会陌生,就是经常在界面上弹出的带有...比如我们要实现一个黑底金字带有阴影的的Crouton(我...(android.R.color.black) //背景颜色 .setT...

Android之两种toast的实现 - 发烧的冬瓜的博客 - CSDN博客

本文举例实现Android中的两种toast: 简单的文本toast 带有图片的toast(自定义) ...(quot;带图片的提示信息quot;); // 设置文本框内字号的大小和字体颜色 text...

超简单实现Android自定义Toast - Android知识库

android:background=quot;@drawable/toast_backquot; android:gravity=quot;center_verticalquot; ...本Demo有更新,去掉了对号和叉号图标,换用背景颜色来替代,感兴趣的...

Android自定义Toast样式 - 开源中国社区

不过还好,android给我们提供了可以自定的Toast,大家可以根据自己的需要定制自己的...android 【九种对话框】的实现方式 (3回/30K+阅, 6年前) 个人爱...

android中Toast出文字同时整个activity变暗成半透明状态,如何实现

在Android系统里通过Toast可以实现类似的弹窗效果。系统的Toast默认弹出到屏幕底部,...如何实现dialog弹出,但activity界面颜色不变暗 // 帮助弹出的d...

Android开发之Toast工具类(实现带图片的Toast消息提示)_Linux编程...

实现的Toast工具类ToastUtil封装了普通文本消息提示和带图片的消息提示,实际开发中可根据自己的需要完善ToastUtil类,比如完善Toast消息位置相关设置等...

Toast分析——实现自己的Toast,toast分析实现_Android教程 | 帮客...

Toast分析——实现自己的Toast,toast分析实现。Toast分析——实现自己的Toast,toast分析实现 android 4.0以后,新增了一个功能:关闭某个应用发出的通知...

Android实现Toast快速刷新-博客-云栖社区-阿里云

摘要: 通常我们使用Toast的时候可能会直接这样写: Toast.makeText(context, text, duration).show(); 这样写通常会有这样一个问题:新Toast要等上一次T...星光大道广州区海选活动地点?星光大道海选在广州华南植物园吗?2017年广东街坊文化节开幕式什么时候?广州街坊文化节举办地点在哪里?华南植物园街坊欢乐节什么时候?广州华南植物园街坊欢乐节时间?华南植物园中秋游园会活动时间?广州华南植物园中秋游园会有什么好玩的?广州街坊文化节在哪里开幕?广东街坊文化节来华南植物园吗?2017广东街坊文化节时间?街坊文化节活动地点?北京出发去厄瓜多尔旅游 北京出发去厄瓜多尔旅游 北京出发去厄瓜多尔旅游 北京出发去厄瓜多尔旅游 北京出发去厄瓜多尔旅游 北京出发去厄瓜多尔旅游 北京出发去厄立特里亚旅游 北京出发去厄立特里亚旅游 北京出发去厄立特里亚旅游 北京出发去厄立特里亚旅游 北京出发去厄立特里亚旅游 北京出发去厄立特里亚旅游 北京出发去法国旅游 北京出发去法国旅游 北京出发去法国旅游 北京出发去法国旅游 北京出发去法国旅游 北京出发去法国旅游 北京出发去法罗群岛旅游 北京出发去法罗群岛旅游 北京出发去法罗群岛旅游 北京出发去法罗群岛旅游 北京出发去法罗群岛旅游 北京出发去法罗群岛旅游

Android默认的Toast太丑了,我们来封装一个花里胡哨的Toast吧,就叫ColoredToast。

Github:https://github.com/imcloudfloating/DesignApp

效果:

Toast有一个setView方法,通过它我们可以设置自定义的布局,这里我只是加入了改变背景色,如果你有其它需求,比如加上图标也是可以的。

布局文件:一个FrameLayout和显示消息的TextView

 1 <??> 2 <FrameLayout ="http://schemas.android.com/apk/res/android" 3  ="http://schemas.android.com/tools" 4  android:layout_width="wrap_content" 5  android:layout_height="wrap_content"> 6  7  <TextView 8   android:id="@+id/toast_message" 9   android:layout_width="wrap_content"10   android:layout_height="48dp"11   android:paddingStart="32dp"12   android:paddingEnd="32dp"13   android:gravity="center"14   android:textSize="18sp"15   tools:text="This is a toast message" />16 17 </FrameLayout>

2.Java代码:

用LayoutInflater来加载布局,然后用setView将布局设置为Toast的根View,通过自定义方法来设置Toast的消息和背景色,这里背景色是给TextView设置的,假如你想加上图标和其它元素,通过findViewById来设置即可。

 1 package com.cloud.customviews; 2  3 import android.content.Context; 4 import android.graphics.drawable.GradientDrawable; 5 import android.support.annotation.ColorRes; 6 import android.support.annotation.IntDef; 7 import android.support.annotation.NonNull; 8 import android.support.annotation.StringRes; 9 import android.view.LayoutInflater;10 import android.view.View;11 import android.widget.TextView;12 import android.widget.Toast;13 14 public class ColoredToast extends Toast {15 16  @IntDef(value = {17    LENGTH_SHORT,18    LENGTH_LONG19  })20  @interface Duration {}21 22  private ColoredToast(Context context) {23   super(context);24  }25 26  public static class Maker {27 28   private Context mContext;29   private ColoredToast mToast;30   private View mToastView;31   private TextView mTextMessage;32 33   public Maker(Context context) {34    mContext = context;35    mToast = new ColoredToast(context);36    mToastView = LayoutInflater.from(context).inflate(R.layout.toast_colored, null);37    mTextMessage = mToastView.findViewById(R.id.toast_message);38   }39 40   /**41    * Set text color and background color for toast by resource id42   */43   public Maker setColor(@ColorRes int textColor, @ColorRes int backgroundColor) {44    GradientDrawable drawable = new GradientDrawable();45    drawable.setColor(mContext.getColor(backgroundColor));46    drawable.setCornerRadius(mTextMessage.getLayoutParams().height / 2);47    mToastView.setBackground(drawable);48    mTextMessage.setTextColor(mContext.getColor(textColor));49    return this;50   }51 52   /**53    * Set position54    * @see android.view.Gravity55   */56   public Maker setGravity(int gravity, int xOffset, int yOffset) {57    mToast.setGravity(gravity, xOffset, yOffset);58    return this;59   }60 61   public ColoredToast makeToast(@StringRes int resId, @Duration int duration) {62    mTextMessage.setText(resId);63    mToast.setView(mToastView);64    mToast.setDuration(duration);65    return mToast;66   }67 68   public ColoredToast makeToast(@NonNull String text, @Duration int duration) {69    mTextMessage.setText(text);70    mToast.setView(mToastView);71    mToast.setDuration(duration);72    return mToast;73   }74  }75 }

花里胡哨的Toast打造完成!