Android开发--FloatingActionButton/Snackbar/CoordinatorLayout
2017-09-24 10:33
393 查看
FloatingActionButton
悬浮按钮是support库中的按钮因此布局文件如下<!--增加悬浮按钮--> <android.support.design.widget.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="16dp" android:src="@drawable/success" />
但是你看上图是不是很模糊的样子,而且貌似有一层阴影的感觉,而且是贴合在主布局中。我们设置它与当前界面有一定的高度。
app:elevation="8dp"
触发点击事件:
//设置FloatingActionButton的点击事件 FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this,"悬浮按钮",Toast.LENGTH_SHORT).show(); } });
Snackbar
一个可以替代Toast的可交互提示工具代码如下:
//设置FloatingActionButton的点击事件 FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //Toast.makeText(MainActivity.this,"悬浮按钮",Toast.LENGTH_SHORT).show(); Snackbar.make(v,"删除重要数据,请小心操作",Snackbar.LENGTH_SHORT) .setAction("取消", new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this,"你取消了本次的删除操作",Toast.LENGTH_SHORT).show(); } }) .show(); } });
从上面可知道操作和Toast是一样的。
从上图中可看到弹出的提示框将悬浮按钮给挡住了?这该怎么解决?
CoordinatorLayout可以上场了。
CoordinatorLayout
CoordinatorLayout是一个加强版的FrameLayout,CoordinatorLayout可以监听所有子控件的各种事件,从而自动的做出合理的相应。如上图中的遮挡问题,当使用CoordinatorLayout监听到Snackbar的弹出事件之后,CoordinatorLayout内部自动将FloatingActionButton向上偏移,从而保证按钮不会被遮挡到。
布局文件只需要将FrameLayout该为android.support.design.widget.CoordinatorLayout即可实现。
总结:上述就Android中关于悬浮按钮FloatingActionButton和Snocker,以及CoordinatorLayout布局的一些概念和基本的操作。
都不难,但是至于真没做一些比较炫酷的操作就有待自己的领悟。
相关文章推荐
- Android Material Design的FloatingActionButton,Snackbar和CoordinatorLayout
- android新特性:CoordinatorLayout与FloatingActionButton、Snackbar的使用
- Android Material Design 之 CoordinatorLayout + FloatingActionButton
- Adroid MD: TextInputLayout/FloatingActionButton/SnackBar
- Android开发 之 CoordinatorLayout+Snackbar+FAB
- Android design library(二)----------FloatingActionButton + Snackbar
- android.support.design.widget包下的CoordinatorLayout、AppBarLayout、TextInputLayout、FloatingActionButton、
- Android Material Design的FloatingActionButton,Snackbar和CoordinatorLayout
- android新控件之toolbar,floatingActionButton,SnackBar,CollapsingToolbarLayout
- Android中Material Desgin风格的Snackbar、TextInputLayout、FloatingActionButton使用
- Material Design(八)--CoordinatorLayout和FloatingActionButton
- Android开发-DesignDemo-AndroidStudio(九)FloatingActionButton(1)
- android——Snackbar+CoordinatorLayout替代Toast
- Android 开发之为ActionBar 添加Actionbar Button
- Android开发-DesignDemo-AndroidStudio(九)FloatingActionButton(1)
- Android开发-DesignDemo-AndroidStudio(十)FloatingActionButton(2)
- Android 开发之为ActionBar 添加Actionbar Button
- Android Design Support Library(一):FloatingActionButton、TextInputLayout、TextInputEditText简单用法
- Android开发-DesignDemo-AndroidStudio(十)FloatingActionButton(2)
- Android 构建和显示弹出消息 CoordinatorLayout+Snackbar