Snackbar没有显示动作文本

时间:2016-06-03 21:17:32

标签: android android-studio android-snackbar

如何让Snackbar显示" UNDO"或"重试"右边的文字?

我已经尝试了setActionTextColor(),但它没有效果。

MyFragment.java

Snackbar.make(getView(), "Profile saved!", Snackbar.LENGTH_LONG)
    .setAction(R.string.snackbar_action_undo, null)
    .setActionTextColor(ContextCompat.getColor(getActivity(), R.color.ColorBrightAccent))
    .show();

我也试过

Snackbar.make(getView(), "Profile saved!", Snackbar.LENGTH_LONG)
    .setAction(R.string.snackbar_action_undo, null)
    .setActionTextColor(Color.YELLOW)
    .show();

的strings.xml

<string name="snackbar_action_undo">UNDO</string>

没有&#34; UNDO&#34;旁边&#34;个人资料已保存!&#34;。 I can't see the "UNDO" text

我查看了解决方案here,但它似乎适用于左侧的文字。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:8)

也许尝试使用OnClickListener添加动作

Snackbar snackbar = Snackbar.make(v, "Profile saved!", Snackbar.LENGTH_INDEFINITE)
                    .setAction("UNDO", new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                            Log.e("TAG", "Done");
                        }
                    }).show();