SnackBar是 Android Support Library 22.2.1 里面新增提供的一个控件,我们可以简单的把它理解成一个加强版的Toast,或者是一个轻量级的Dialog。...特点: 1.SnackBar和Toast的用途一样,都是用来提示用户操作后的结果的。 2.SnackBar显示时位置一般是在屏幕底部,较大的设备就显示在左下角。...3.SnackBar同一时间只有一条 4.SnackBar可以自动消失,也可以手动取消(在完成某个操作的时候) 5.在Activity结束的时候,SnackBar会消失,这点Toast不会 (避免...Toast那样 退出Activity了,Toast还继续显示的问题) 6.SncakBar能支持侧滑 看一下SnackBar的使用方法: 三个参数:View ,内容文本,显示时长 public...return snackbar; } 和Toast的使用类似 Toast的三个参数:上下文,内容文本,显示时长 Toast.makeText(this,"Toast内容",Toast.LENGTH_SHORT
吐司(Toast) private Toast toast; public void showToast(String content) { //判断是否为空,避免生成多个Toast...if (toast == null) { toast = Toast.makeText(this, content, Toast.LENGTH_SHORT);...} else { toast.setText(content); } toast.show(); } 效果图,我一直狂点,...//第一个参数是随便找当前布局的id就行了 Snackbar snackbar = Snackbar.make(findViewById(R.id.activity_main), "这个操作不重要...", Snackbar.LENGTH_LONG); //设置按钮 snackbar.setAction("好的", new View.OnClickListener()
Snackbar 如果说Dialog和Toast是两个极端的话,那么Snackbar就是处于中间的位置了。Snackbar和Toast比较相似,但是用途更加广泛,并且它是可以和用户进行交互的。...' } 然后就可以使用Snackbar了,它的用法和Toast是比较相似的: Snackbar.make(view, "data deleted",Snackbar.LENGTH_LONG)...第二个参数就是Snackbar中显示的内容,第三个参数是Snackbar显示的时长。这些和Toast都是类似的。...可以看到,Snackbar的效果有点类似于Toast,不过它是从屏幕底部弹出来的。...Toast:当提示信息只是告知用户某个事情发生了,用户不需要对这个事情做出响应的时候,使用Toast。 Snackbar:以上两者之外的任何其他场景,Snackbar可能会是你最好的选择。
提示窗Toast 大家平时都经常用Toast,可是你是否发现,系统默认的Toast样式太过单调乏味呢?...); toast.show(); 提示条Snackbar Snackbar是Android Support Design Library库的一个新控件,与Toast相比,Snackbar不仅仅用来提示消息...另外,Snackbar最好配合控件CoordinatorLayout使用,因为这样Snackbar才能够像通知那样通过右滑手势取消。...Snackbar的用法与Toast类似,常用方法说明如下: make : 构造一个Snackbar对象。可指定提示条的上级视图、提示消息文本、显示时长等信息。...() == R.id.btn_snackbar_action) { Snackbar.make(cl_container, "这是一个可交互的提示条", Snackbar.LENGTH_LONG)
简述: Snackbar 是 Android design support library 中的一个组件,它的作用和Toast类似,显示吐司,但Snackbar的特别之处在于Snackbar...,Snackbar.LENGTH_SHORT).show(); 使用起来类似于Toast,但也有与Toast的不同之处,Toast的使用: Toast.makeText(MainActivity.this..., "真的能够交互", Toast.LENGTH_SHORT).show(); 他们的第一个参数不同,Toast第一个参数是Context,而Snackbar第一个参数为View,这个...与Toast不同的是Snackbar显示时长有三种: ①Snackbar.LENGTH_SHORT:与Toast.LENGHT_SHORT(大约1.x秒)一样显示较短时长后自动消失...②Snackbar.LENGTH_LONG:与Toast.LENGHT_LONG(大约3秒)一样显示相对较长时间后自动消失。
Snackbar 呢,是 Android 官方的一个控件,它可以说跟 Toast 类似,在应用交互中给用户以友好提示的控件。 它通常出现屏幕底部,给予用户简短的提示消息。..." 然后在代码中使用(简单使用跟Toast是类似的): Snackbar.make(binding.root, "This is a snackbar message", Snackbar.LENGTH_SHORT...666~ 二、给 Snackbar 添加点花样 上述只是最最最简单的使用 Snackbar,如果只是弹出提示,那显然 Toast 已经够了,它肯定是提供了 Toast 不具备的功能的,接下来开始实践一下吧..."Action" ) { Toast.makeText(this@CallBoardActivity, "您点击了 Snackbar 的 Action", Toast.LENGTH_LONG...(this@CallBoardActivity, "您点击了 Snackbar 的 Action", Toast.LENGTH_LONG).show() } .show(
使用 Snackbar,可以在屏幕底部快速的显示一条消息,大体与 Toast 相同,但多了几分灵活性: 一小段时间之后、或者用户与屏幕触发交互,Snackbar 会自动消失; 可以包含一个可选的操作;...把 Snackbar 划出屏幕,可以弃用; 作为一条上下文敏感的消息,也是 UI 的一部分,并在屏幕内所有元素的上层显示,而不是像 Toast 消息一样位于屏幕中央; 一个时刻只能有唯一一个 Snackbar...Snackbar 会沿着 view 的树状路径,找到第一个合适的布局或窗口视图,作为父 view。...上文提到,持续时间属性与 Toast 的相同,可选 LENG_SHORT 或者 LENGTH_LONG。...---- 英文原文: http://www.technotalkative.com/part-2-welcome-snackbar-goodbye-toast/ ---- Snackbar样式 在这里我们将看到如何显示不同颜色的
)} method, or use a * snackbar/Snackbar...)} method, or use a * snackbar/Snackbar...大意: 自定义toast view已经弃用,你可以创建一个标准的toast,或者用Snackbar。 从AndroidR开始,将不再显示自定位toast view。...方案一 使用标准的toast Toast.makeText(context, msg, Toast.LENGTH_SHORT).show() 方案二 使用Snackbar Snackbar的使用跟Toast...Snackbar.make(view, "已加入行程", Snackbar.LENGTH_SHORT).show() 方案三 不使用系统的toast,但可以借鉴来写一个自定义view 大致思路: 初始化引用自定义布局
事实上, SnackBar 就是这样的方案。不过,如果不使用系统类型的窗口,就意味着你的Toast 界面,无法在其他应用之上显示。...,这个函数的目的就相当于我们上面的 findViewById(R.id.content) 一样,给 SnackBar 所定义的 Toast 控件找一个合适的容器: private static ViewGroup..., mTargetParent, false); ... } Snackbar 将生成一个 SnackbarLayout 控件作为 Toast 控件。...假如你现在弹了 10 个 Toast ,每个 Toast 的显示时间是 2s 。也就是说你的最后一个 SnackBar 将被 SnackBarManager 持有至少 20s。...不过,有了上面的知识储备,我们完全可以写一个自己的 Snackbar。 4.基于Toast的改法 从第一篇文章我们知道,我们直接在 Toast.show 函数外增加 try-catch 是没有意义的。
Snackbar是谷歌集成的design包下的一个用于消息提示的控件,介于Dialog和Toast之间,结合了两者的优点,又解决了Dialog强提示和Toast无法交互的缺点,使用方法也很简单,首先我们需要引入...@Override public void onClick(View v) { Toast.makeText(MainActivity.this,..."点击了确定", Toast.LENGTH_SHORT).show(); } }).show(); } 把消失时间传入Snackbar.LENGTH_INDEFINITE...() { @Override public void onShown(Snackbar sb) { Toast.makeText...{ Toast.makeText(MainActivity.this, "消失了", Toast.LENGTH_SHORT).show();
Snackbar ---- ? 首先要明确,Snackbar并不是Toast的替代品,它们两者之间有着不同的应用场景。...Toast的作用是告诉用户现在发生了什么事情,但同时用户只能被动接收这个事情,因为没有什么办法能让用户进行选择。...第二个参数就是Snackbar中显示的内容, 第三个参数是Snackbar显示的时长。 这些和Toast都是类似的。...接着这里又调用了一个setAction()方法来设置一个动作,从而让Snackbar不仅仅是一个提示,而是可以和用户进行交互的。 简单起见,我们在动作按钮的点击事件里面弹出一个Toast提示。...(MainActivity.this, "FAB clickes", Toast.LENGTH_SHORT).show(); //Snackbar
Snackbar是介于Toast与Dialog之间的一个控件,既可以像Toast一样自动消失,也可以像Dialog一样交互消失。...使用与Toast相似: Snackbar.make(view, "已加入行程", Snackbar.LENGTH_SHORT).show(); 第一个参数是view,任意都行,但是google官方建议传入...CoordinatorLayout,一来在Snackbar显示的时候可以右滑移除,二来在Snackbar显示的时候布局会自动变 第二个参数是message,即提示的内容 第三个参数是显示的时长,Snackbar.LENGTH_SHORT...短时间显示且自动消失,Snackbar.LENGTH_LONG 长时间显示且自动消失,Snackbar.LENGTH_INDEFINITE 不消失显示 用在加了Action的情况下,在用户点击之后再消失...高级一点的使用(改颜色,加Action,加回调): final Snackbar mSnackbar = Snackbar.make(view, "已加入行程", Snackbar.LENGTH_INDEFINITE
概述 Snackbar 类似toast,用于向 用户展示信息,和用户交互,它能够显示一个 按钮 获得用户的操作。...Toast只能显示文本,无法通过 按钮和用户交互 支持向右滑动手势:手指在snackbar上向右滑动,则关闭snackbar 支持设置一个时间,超时自动关闭snackbar 使用方法: 1.放置父布局...android:background="#2a5caa"> 2.在代码里执行显示snackbar...Snackbar.make(view, "文本", Snackbar.LENGTH_LONG) .setAction("操作", new View.OnClickListener
本篇博客将会给大家带来一个轻量级控件SnackBar,为什么要讲SnackBar?Snackbar:的提出实际上是界于Toast和Dialog的中间产物。...因为Toast与Dialog各有一定的不足,使用Toast的时候, 用户无法交互;使用Dialog:用户可以交互,但是体验会打折扣,会阻断用户的连贯性操作;但是使用Snackbar既可以做到轻量级的用户提醒效果...SnackBar的使用 SnackBar的使用十分简单,其实和Toast的使用方法差不多,我们写一个很简单的例子,来看一下SnackBar的使用,布局上有一个按钮,点击后弹出SnackBar,弹出的逻辑如下...public void onDismissed(Snackbar snackbar, int event) { Toast.makeText(MainActivity.this,...Snackbar snackbar) { Toast.makeText(MainActivity.this, "SnackBar出现了", Toast.LENGTH_SHORT)
github地址: https://github.com/shuaijia/MaterialDesignProject 简介 官方推荐使用SnackBar代替Toast 基本用法: (和Toast很类似...) 注意: 第一个数view,任何view都可以,但官方推荐CoordinatorLayout,好处有两个: - 可以右滑删除 - SnackBar弹出时,会移动一些UI元素 SnackBar会一个接一个地显示
先看一下什么是SnackBar,如下图: ? image SnackBar是用户操作后,显示提示信息的一个控件,类似Toast,会自动隐藏。它还可以添加操作按钮,等等。...SnackBar是通过Scaffold的showSnackBar方法来显示的。所以要显示一个SnackBar,要先拿到Scaffold。...body: new SnackBarPage(), ); 显示SnackBar 首先创建一个SnackBar,再通过Scaffold的方法来显示。...final snackBar = new SnackBar(content: new Text('这是一个SnackBar!'))...; Scaffold.of(context).showSnackBar(snackBar); 给SnackBar添加一个操作按钮 有时候,我们可能会想在显示的提示信息上添加一些操作。
fab的挂接.gif ---- 二、Snackbar和FloatingActionButton联动 Snackbar感觉就像下面出来的Toast,只是可以交互而已 ?..., "Hello Snack", Snackbar.LENGTH_LONG) .setAction("Toast", v1 -> {...Toast.makeText(this, "Hi , I'm toly", Toast.LENGTH_SHORT).show(); }).show();...snackbar自定义布局.gif mFab.setOnClickListener(v -> { Snackbar snackbar = Snackbar.make(mClRoot, "Hello...Snack", Snackbar.LENGTH_LONG); ViewGroup view = (ViewGroup) snackbar.getView(); view.removeAllViews
btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText...(getApplicationContext(), "按钮点击了", Toast.LENGTH_LONG).show() } }); 使用后 btn = (Button) findViewById...(R.id.btn); btn.setOnClickListener(v -> { Toast.makeText(getApplicationContext(), "按钮点击了", Toast.LENGTH_LONG...).show(); }); Snackbar的点击事件 final Snackbar snackbar = Snackbar.make(outLayoyt, "服务器地址尚未设置!"..., Snackbar.LENGTH_LONG); snackbar.setAction("设置",v -> { }); 线程处理 使用前 new Thread(new Runnable() {
可以参考这个例子: https://github.com/Clans/FloatingActionButton Snackbar Snackbar提供了一个介于Toast和AlertDialog之间轻量级控件...它的使用方式也是非常的简单,跟Toast差不多,代码如下: final Snackbar snackbar = Snackbar.make(view, "关注非著名程序员公众号了吗?"..., Snackbar .LENGTH_LONG); snackbar.show(); snackbar.setAction("关注", new View.OnClickListener(...Snackbar样式 如何修改Snackbar样式呢?其实也非常简单。...代码如下: final Snackbar snackbar = Snackbar.make(rv, "你知道非著名程序员这个公众号吗?"