2

如果我们使用大量的 Snackbars,创建一个控制 Snackbar 创建的类会更好,还是会降低性能?因为我们将为垃圾收集器(该创建者类的实例)再创建一个对象。

我经常使用这样的代码:

 final Snackbar snackbar = Snackbar
                                    .make(coordinatorLayout, "Added to favourites", Snackbar.LENGTH_LONG);
                            snackbar.setAction("UNDO", new View.OnClickListener() {
                                @Override
                                public void onClick(View view) {
                                    snackbar.dismiss();

                                }
                            });
                            snackbar.show();

或相同但也有颜色选项:

        View sbView = snackbar.getView();
        TextView textView = (TextView) sbView.findViewById(android.support.design.R.id.snackbar_text);
        textView.setTextColor(ContextCompat.getColor(MyApplication.getAppContext(), R.color.accentColor));
        snackbar.show();

创建这样一个类来制作这些 Snackbars 是一个好主意,还是只会更加重视性能?

现在有了一个辅助类,代码看起来更具可读性:

SnackBarHelper snackBarHelper = new SnackBarHelper(coordinatorLayout, "You already signed up for this one!", Snackbar.LENGTH_LONG);
                            snackBarHelper.addColor(R.color.accentColor);
                            snackBarHelper.getMySnackbar().show();

这虽然没有 onclick 代码。

4

0 回答 0