Snackbar是Android Support Design Library库支持的一个控件
首先,得在build.gradle文件中添加如下:
compile 'com.android.support:design:22.2.0'
笔者在学习使用该控件的时候也查阅很多相关的文章。但是遇到了如下问题:
查看我的compileSdkVersion
果然,和提示描述的一致,所以我们得改成如下:
(编译的支持库版本必须相同–这样的描述不知道有没有问题)
compile 'com.android.support:design:24.2.0'
这样点击右上角Sync New即可。
现在正式说说SnackBar常见的两种使用方式:
其中,Snackbar使用的时候需要一个控件容器用来容纳Snackbar.官方推荐使用CoordinatorLayout这个另一个Android Support Design Library库支持的控件容纳。因为使用这个控件,可以保证Snackbar可以让用户通过向右滑动退出。但是这里先使用最简单的方式,直接 用当前Activity的布局LinearLayout作为承载SnackBar的容器。
如下:
public class MainActivity extends AppCompatActivity {
private LinearLayout lly;//承载SnackBar的父布局
.
.
.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lly = (LinearLayout)findViewById(R.id.id_main_layout);
.
.
.
方式一:
Snackbar.make(lly,"再按一下,退出应用",Snackbar.LENGTH_SHORT).show();
效果如图:
方式二:
Snackbar.make(lly,"SnackBar测试",Snackbar.LENGTH_SHORT)
.setAction("详情", new View.OnClickListener() {
@Override
public void onClick(View v) {
Snackbar.make(lly,"ActionClick",Snackbar.LENGTH_SHORT).show();
}
}).show();
这样弹出带有”SnackBar测试”字样的同时,右边还有“详情”字样可以点击,该例子如上代码所示,点击“详情”将再次触发一个普通SnackBar显示ActionClick字样。
效果如图:
其实微信也有这样的设置,当你收藏一篇文章的时候,下方就会弹出一个Snackbar并带有“已收藏”,“添加标签”字样。的确很实用,在某些场景是可以替代“古老的”Dialog了。
如:
本文介绍了Android Support Design Library中的SnackBar控件,讲解了如何在项目中添加SnackBar以及两种使用方式,包括基本显示和带有Action的显示。文章还提到了SnackBar在实际应用中的实用性,例如在微信中收藏文章时的提示效果,它在某些场景下可以替代Dialog。


被折叠的 条评论
为什么被折叠?



