把 Snackbar 划出屏幕,可以弃用; 作为一条上下文敏感的消息,也是 UI 的一部分,并在屏幕内所有元素的上层显示,而不是像 Toast 消息一样位于屏幕中央; 一个时刻只能有唯一一个 Snackbar...设置Action行为事件,使用的方法是public Snackbar setAction (CharSequence text, View.OnClickListener listener); Action..., Snackbar.LENGTH_SHORT) .setAction("Undo", new View.OnClickListener() { @Override..., Snackbar.LENGTH_SHORT) .setAction("Undo", new View.OnClickListener() { @Override..., Snackbar.LENGTH_SHORT) .setAction("Undo", new View.OnClickListener() {
的使用方法和Toast很相似 Snackbar.make(mOpenTv, "消息内容", Snackbar.LENGTH_SHORT) .setAction("确定", new View.OnClickListener...:短时间显示 LENGTH_LONG:长时间显示 LENGTH_INDEFINITE:一直显示,只有当用户触发Action点击事件或手动删除时才会消失 Snackbar可以通过setAction方法设置一个点击事件...是也不是,为啥这么说呢,Snackbar确实是在CoordinatorLayout底部显示的,但并不等于是在屏幕顶部 首先我们要知道Snackbar显示的原理是什么 之前介绍中的第一个传进去的参数...4.给消息内容添加图标 获取到消息内容的TextView后,调用setCompoundDrawables方法设置它的图标,可自由选择图标放置的位置,四个参数分别对应TextView的左、上、右、下...Snackbar sb = Snackbar.make(mOpenTv, "消息内容", Snackbar.LENGTH_SHORT); sb.setAction("确定", new View.OnClickListener
); 2.2 Snackbar的make()后面连缀调用setAction()来设置一个动作 (两个参数:一参为bar栏右侧点击交互显示内容,二参为重写onClick()的OnClickListener...Snackbar ---- ? 首先要明确,Snackbar并不是Toast的替代品,它们两者之间有着不同的应用场景。...而Snackbar则在这方面进行了扩展,它允许在提示当中加人一个可交互按钮,当用户点击按钮的时候可以执行一些额外的逻辑操作。...接着这里又调用了一个setAction()方法来设置一个动作,从而让Snackbar不仅仅是一个提示,而是可以和用户进行交互的。 简单起见,我们在动作按钮的点击事件里面弹出一个Toast提示。...事实上,CoordinatorLayout可以监听其所有子控件的各种事件,然后自动帮助我们做出最为合理的响应。
这个工具是用 Rust 编写的,该语言以并行性和安全性而闻名。...--level 的值决定了列表的深度,这里设置为 2。如果你想列出更多的子目录和文件,请增加 --level 的值。 image.png 这个树包含了每个文件的很多元数据。...它的颜色编码让我更容易在多个子目录中进行搜索,它还能帮助我了解当前的 xattrs。
而Snackbar是Design Support库中提供的新控件,有些朋友可能已经用过了,有些朋友可能还没去了解。...现在这个Dialog是Material Design风格的,因为我是在6.0系统上运行的,因此会自动赋予这样的风格。但是如果在老版本系统上运行,比如说2.3系统,会是什么样的效果呢?...不过也不是说Toast的用法就一点深度都没有了,比如说上述的写法就会存在如下图所示的问题: ? 可以看到,这里我快速连续点击了五次按钮,Toast就触发了五次。....setAction("Undo", new View.OnClickListener(){ @Override public void...接着这里又调用了一个setAction()方法来设置一个动作,从而让Snackbar不仅仅是一个提示,而是可以和用户进行交互的。最后调用show()方法让Snackbar显示出来。
他们在屏幕的底部显示一条简短的信息,如果是较大的设备就显示在左下角。SnackBar出现在屏幕中所有其他元素的上方,同一时间仅仅只有一条SnackBar”。...snackbar.setAction("OK?"...(); setAction(CharSequence text, View.OnClickListener listener)方法为用户交互的点击事件,第一个参数是点击事件的信息,第二个就是一个...:一个是onShow()在Snackbar显示时回调,另一个是onDismissed()在Snackbar隐藏时回调。...该事件下Snackbar提出的原因:由于新的Snackbar的显示而退出。
, Snackbar .LENGTH_LONG); snackbar.show(); snackbar.setAction("关注", new View.OnClickListener(...().getColor(R.color.add_bg_color)); // 获取 snackbar 视图 View snackbarView = snackbar.getView(); //设置修改...snackbar背景色 snackbarView.setBackgroundColor(Color.GRAY); snackbar.show(); snackbar.setAction("知道",...new View.OnClickListener() { @Override public void onClick(View view) { snackbar.dismiss...添加icon和改变Snackbar的位置 修改了背景色,文字按钮颜色,是不是还不过瘾?看看我们如何在Snackbar上添加上一个icon图片。其实也非常简单,和修改样式的过程差不多。
概述 Snackbar 类似toast,用于向 用户展示信息,和用户交互,它能够显示一个 按钮 获得用户的操作。...Toast只能显示文本,无法通过 按钮和用户交互 支持向右滑动手势:手指在snackbar上向右滑动,则关闭snackbar 支持设置一个时间,超时自动关闭snackbar 使用方法: 1.放置父布局...true" android:background="#2a5caa"> 2.在代码里执行显示...snackbar Snackbar.make(view, "文本", Snackbar.LENGTH_LONG) .setAction("操作", new View.OnClickListener
CoordinatorLayout,一来在Snackbar显示的时候可以右滑移除,二来在Snackbar显示的时候布局会自动变 第二个参数是message,即提示的内容 第三个参数是显示的时长,Snackbar.LENGTH_SHORT...高级一点的使用(改颜色,加Action,加回调): final Snackbar mSnackbar = Snackbar.make(view, "已加入行程", Snackbar.LENGTH_INDEFINITE...); //设置Snackbar的背景颜色 mSnackbar.getView().setBackgroundColor(ContextCompat.getColor...(MainActivity.this,R.color.colorPrimary)); //设置Action文字的背景颜色 mSnackbar.setActionTextColor...(Color.WHITE); //设置Action并监听事件 mSnackbar.setAction("知道了", new View.OnClickListener
链接地址:https://blog.doiduoyi.com/authors/1584446358138 初心:记录优秀的Doi技术团队学习经历 有各种各样的通知,不同情况使用不同的通知方式,使用户在体验上更佳...builder.setContentTitle("恭喜你中奖了"); //在通知栏显示的内容 builder.setContentText("你的号码被我公司抽中...如果你是在Fragment上操作,有一点点的不同,留意注释上的说明 @Override public View onCreateView(LayoutInflater inflater, ViewGroup...//第一个参数是随便找当前布局的id就行了 Snackbar snackbar = Snackbar.make(findViewById(R.id.activity_main), "这个操作不重要...", Snackbar.LENGTH_LONG); //设置按钮 snackbar.setAction("好的", new View.OnClickListener()
我们在google keep中删除记事块儿时,下面会弹出一个小条儿,问你是否撤消,一段时间后自动隐去,同时右划也可以使它隐去。...Google在Android中做好了一个控件SnackBar可以简单地完成这个功能。...Snackbar.LENGTH_LONG) .setAction("Action", new View.OnClickListener() {...只需要输入想让它出现的ViewGroup,出现的提示,并可以设置一个点击事件。 ...2.SnackBar.show()的时候,要注意先把Keyboard.hide()了。不然,键盘就会遮住SnackBar。 3.字如果想换颜色要使用SpannableString。
其实Toast的界面也允许开发者自行定制,只要定义好提示窗的布局文件,即可调用Toast类的setView方法设置自定义窗口画面。包括背景、对齐方式、窗口内部控件等等界面元素,均可由你自己定制。...setText : 设置提示消息的文本内容。 setAction : 设置交互按钮的文本与点击监听器。 setActionTextColor : 设置交互按钮的文本颜色。...setDuration : 设置提示消息的显示时长。 show : 显示提示条。 下面是演示提示条的两个截图,分别展示了滑动取消提示条效果,以及点击交互按钮的界面效果: ? ?...() == R.id.btn_snackbar_action) { Snackbar.make(cl_container, "这是一个可交互的提示条", Snackbar.LENGTH_LONG)....setAction("点我", new View.OnClickListener() { @Override public void onClick(View v)
点击它弹出一个Snackbar。当Snackbar完全弹出时,Button背景变为红色。当Snackbar准备离开时,Button背景再度变为绿色。...parent 是 Button和Snackbar的容器 child 是Button dependency 是Snackbar 因为在本例中,是Button的背景色依赖Snackbar的位置变化。...setContentView(R.layout.activity_main); findViewById(R.id.test).setOnClickListener(new View.OnClickListener...() { @Override public void onClick(View view) { Snackbar.make...(view, "Hello world", Snackbar.LENGTH_LONG) .setAction("cancel", new View.OnClickListener
云标签开源地址 在源码里面加了两个方法 /**修改某些位置定点颜色**/ public void setTagsByPosition(HashMap<Integer, Boolean positions...static final int SELCECT_TEXT_COLOR = R.color.yellow_bg;//选中后的标签颜色 private int mSeclectTagColor; 在styles.xml...(normalTagView, AllTagsNormal.get(position), Snackbar.LENGTH_LONG) .setAction("Action", null).show();...(selectTagUseView, AllTagsSelect.get(position), Snackbar.LENGTH_LONG) .setAction("Action", null).show...(positionsView, AllTagsPosition.get(position), Snackbar.LENGTH_LONG) .setAction("Action", null).show(
我们看到,在android源代码里大量使用了注解。我整理了一些注解如下: ---- @NonNull 告诉编译器,这个参数是非空的,编译器会帮你做出检查。...示例: @NonNull public static Snackbar make(@NonNull View view, @StringRes int resId, @Duration int duration...getDelegate().findViewById(id); } @StringRes 声明这个 int 参数 是一个字符串资源,编译器会帮你做出检查 示例: @NonNull public Snackbar...setAction(@StringRes int resId, View.OnClickListener listener) { return setAction(mContext.getText(
Lambda表达式能有效减少代码量 使代码的结构更清晰 那么怎样在项目中使用呢。...有两种方式: 使用第三方的Java8兼容插件 使用官方Jack支持Java8 使用第三方的Java8兼容插件(建议) Github地址:retrolambda 使用JDK1.8 在project的根...实例对比 点击事件 使用前 btn = (Button) findViewById(R.id.btn); btn.setOnClickListener(new View.OnClickListener(...的点击事件 final Snackbar snackbar = Snackbar.make(outLayoyt, "服务器地址尚未设置!"..., Snackbar.LENGTH_LONG); snackbar.setAction("设置",v -> { }); 线程处理 使用前 new Thread(new Runnable() {
getLayoutInflater()); // 调用setContentView方法显示视图界面 setContentView(binding.getRoot()); // 设置对工具栏...this, navController, appBarConfiguration); // 点击事件 binding.fab.setOnClickListener(new View.OnClickListener...() { @Override public void onClick(View view) { Snackbar.make...(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action
它相对 Toast 还有个很大的不同点,它能提供相关操作的轻量反馈,也就是说它可以点击,通过 setAction 方法去设置相关响应动作。 总之,这个控件呢,在项目中还挺实用的,开始实践一下吧。...).show() 这里随机在一个按钮点击时间里面调用,点击了按钮会在屏幕底部弹出: snackbar 它也可以设置显示时间,点到源码可以看到,duration 有三种: duration 还有个可选是不定...setAction(): 设置Snackbar右侧按钮,增加进行交互事件。...).show() }.show() setAction1 setAction2 setBackgroundTint(): 给 Snackbar 设置背景颜色 setActionTextColor...(): 给 Snackbar Action 文字设置颜色 setTextColor(): 给 Snackbar 文字设置颜色 Snackbar.make(binding.root, "Show some
design包,然后在代码中调用 public void click(View view) { Snackbar.make(view, "这是一个提示", Snackbar.LENGTH_SHORT...view, "这是一个提示", Snackbar.LENGTH_INDEFINITE).setAction("确定", new View.OnClickListener() {...Snackbar.gif 我们还可以利用setCallback方法监听SnackBar的显示和消失,利用setActionTextColor方法设置点击按钮的字体颜色 public void click...(View view) { Snackbar.make(view, "这是一个提示", Snackbar.LENGTH_INDEFINITE).setAction("确定", new View.OnClickListener...所以这就是一般情况下Snackbar是显示在最下方的原因 回到make方法 public static Snackbar make(@NonNull View view, @NonNull CharSequence
为了解决这个问题,Google公司在2014年IO大会上推出了一套全新的界面设计语言——Material Design(材料设计语言),这次Google在界面设计上确实下足了功夫,一个词,好看。...并且在2015年IO大会上推出了一个Design Support库,这个库将Material Design中最具代表性的一些控件和效果进行了封装,使得开发者在不了解Material Design的情况下也可以轻松地将自己的应用...", Snackbar.LENGTH_SHORT) // 设置动作 .setAction("ok", new View.OnClickListener() { @Override public...和悬浮按钮同时使用并且悬浮按钮在界面右下角时,弹出的Snackbar会将悬浮按钮给遮住,这种用户体验是不友好的,要解决这个问题只需要借助 CoordinatorLayout 就可以轻松解决。...Dialog以外的界面不消失,按返回键也不起作用 .setPositiveButton("OK", new android.content.DialogInterface.OnClickListener
领取专属 10元无门槛券
手把手带您无忧上云