Snackbar+CoordinatorLayout

Toast用于告知用户发生了什么,但不与用户交互
Snackbar在Toast的基础上,在提示中加入了一个可交互按钮

Snackbar.make(v,"To Top?",Snackbar.LENGTH_SHORT)
                        .setAction("Yes",new View.OnClickListener(){
                            @Override
                            public void onClick(View v){
                                Toast.makeText(MainActivity.this,"to top",
                                        Toast.LENGTH_SHORT).show();
                            }
                        }).show();

make的第一个参数View:传入当前界面布局的任意一个view即可,snackbar使用这个view来自动查找最外层的布局,用于展示snackbar
setAction()设置一个动作


snackbar是在屏幕下方弹出的,此时会遮挡住屏幕下方的控件,但项悬浮按钮是不应该被遮挡的,应该随着snackbar的弹出向上偏移
这就要用的CoordinatorLayout布局,该布局是FrameLayout的加强版,可以监听其所有子控件的各种事件,然后自动做出合理相应
比如CoordinatorLayout监听到Snackbar的弹出事件(将第一个参数设为CoordinatorLayout的子控件),那么它会自动将内部的FloatingActionButton向上偏移,从而确保不会被遮挡

<android.support.design.widget.CoordinatorLayout
             android:layout_width="match_parent"
             android:layout_height="match_parent">
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,179评论 25 708
  • 滑动菜单可以说是Material Desgin中最常见的效果之一了,在许多著名的应用中,都有滑动菜单的功能...
    AndYMJ阅读 2,559评论 2 4
  • 内容抽屉菜单ListViewWebViewSwitchButton按钮点赞按钮进度条TabLayout图标下拉刷新...
    皇小弟阅读 46,878评论 22 665
  • 分享一个关于股票的小故事,非本人实际操作但是本人实际受益了:80后的我,06年大学毕业(一下子暴露年龄了),从小家...
    米虫奕奕阅读 394评论 1 2
  • 太阳 他下马、观花,睡眼惺忪 他刚刚从地平线中被抽出来。深冬吝啬 “太阳你好像 饿瘦了,要吃一点草。”他解开绳子 ...
    七糖阅读 167评论 0 1