美文网首页
Material Design之Snackbar

Material Design之Snackbar

作者: 谢尔顿 | 来源:发表于2018-02-11 11:00 被阅读24次

引言

Snackbar是design包中的一个控件,它与我们常用的Toast的功能类似,而且比toast更强大。


1.普通的SnackBar

效果图:


Snackbar.make(view,"我是普通的Snackbar",Snackbar.LENGTH_SHORT).show();

2.右侧带按钮的SnackBar

效果图:


Snackbar.make(view,"还有两天就要回家过年了",Snackbar.LENGTH_LONG)
                        .setAction("右侧按钮", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                Toast.makeText(SnackBarActivity.this, "点击了Snackbar右侧的按钮", Toast.LENGTH_SHORT).show();
                            }
                        }).show();

3.修改SnackBar的背景和文字颜色

效果图:


Snackbar snackbar = Snackbar.make(view, "还有两天就要回家过年了", Snackbar.LENGTH_LONG)
                        .setAction("右侧按钮", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                Toast.makeText(SnackBarActivity.this, "点击了Snackbar右侧的按钮", Toast.LENGTH_SHORT).show();
                            }
                        });
                //获取Snackbar的view
                View snackbarView = snackbar.getView();
                snackbarView.setBackgroundColor(Color.parseColor("#1E8AE8"));
                //改变文字颜色
                ((TextView) snackbarView.findViewById(R.id.snackbar_text)).setTextColor(Color.RED);
                //改变右侧按钮的字体颜色
                Button rightBtn = ((Button) snackbarView.findViewById(R.id.snackbar_action));
                rightBtn.setTextColor(Color.RED);
                snackbar.show();

SnackBar还有一些其他方法,这里就不一一阐述了。

4.结合CoordinatorLayout使用

效果图:



我们可以发现结合CoordinatorLayout和FloatingActionButton使用之后,会有一些比较多大效果。

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"

    tools:context="com.gjj.gd.materialdesign_v7.snackbar.SnackBarActivity">
    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="20dp"
        android:layout_gravity="bottom|right"/>

</android.support.design.widget.CoordinatorLayout>

相关文章

网友评论

      本文标题:Material Design之Snackbar

      本文链接:https://www.haomeiwen.com/subject/hybwmttx.html