android Snackbar

项目里好久不用这个东东了,抓紧写个文章记录一下,其实使用挺简单的

首先第一步是导包 导入design包,因为这个东西在这个包里面,
下面就是使用了下面一个简单的例子:

public void click(View view) {
    Snackbar.make(view, "这是", Snackbar.LENGTH_LONG).setAction("点击", new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Log.e("=====>>>>", "点击了啊");
        }
    }).setDuration(3000).show();
}
android Snackbar_第1张图片
效果图.png

里面的文字现在明白了吧,点击后面就是点击事件的监听,然后setDuration这个是设置显示多久毫秒单位,然后show就是显示不写这个代码是不会显示的,下面是一些常用方法

SnackBar的常用方法:
// 用于给SnackBar设定一个Action,点击之后会回调OnclickListener中的Onclick方法
public Snackbar setAction(CharSequence text, final View.OnClickListener listener)
// 用于设定Action的字体颜色
public Snackbar setActionTextColor(@ColorInt int color)
// 设定提示的字体
public Snackbar setText(@NonNull CharSequence message)
// 展示SnackBar
public void show()
// 清除SnackBar
public void dismiss()
// 设置回调,比如OnDismissed或者OnShown
public Snackbar setCallback(Callback callback)

public static void setSnackbarColor(Snackbar snackbar, int messageColor, int backgroundColor) {
    View view = snackbar.getView();//获取Snackbar的view
    if (view != null) {
        view.setBackgroundColor(backgroundColor);//修改view的背景色
        ((TextView) view.findViewById(R.id.snackbar_text)).setTextColor(messageColor);//获取Snackbar的message控件,修改字体颜色
    }
}//修改snackbar背景颜色 以及title字体颜色

使用修改颜色的代码记得放在 .show;后面

你可能感兴趣的:(android Snackbar)