Android 多行 Snackbar

标签 android android-support-library android-design-library android-snackbar

我正在尝试利用 Android 设计支持库中的新 Snackbar 来显示多行 snackbar ,如 http://www.google.com/design/spec/components/snackbars-toasts.html#snackbars-toasts-specs 所示:

import android.support.design.widget.Snackbar;

final String snack = "First line\nSecond line\nThird line";
Snackbar.make(mView, snack, Snackbar.LENGTH_LONG).show();

它在我的 Nexus 7 上只显示 First line...。如何让它显示所有行?

PS:我试过 Toast 并显示所有行。

最佳答案

只需设置Snackbars Textview的maxLines属性

View snackbarView = snackbar.getView();
TextView textView = (TextView) snackbarView.findViewById(android.support.design.R.id.snackbar_text);
textView.setMaxLines(5);  // show multiple line

如果您使用的是更新的 "com.google.android.material:material:1.0.0" 依赖项,那么您将使用这个:com.google.android。 material.R.id.snackbar_text 来访问 Snackbar 的 TextView。

您甚至可以使用 R.id.snackbar_text。这对我有用。

关于Android 多行 Snackbar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30705607/

相关文章:

android - 带有 NDK 15c 的 FFMpeg 3.4 与带有 NDK 16b 的 FFMpeg 3.4

android - 在 Branch io 中禁用或删除 Deepviews

android - 在 API 级别 8 上使用 API 级别 18 的 Android AccessabilityService 功能

android - NotificationBuilder.setProgress 在 2.3.5 上不执行任何操作

android - 如何删除Android工具栏的左边距?

android - 以编程方式设置 float 操作按钮的行为

java - 是否可以进行条件包含和条件函数调用?

java - 使用库项目编译 android 项目失败,缺少 classes.jar

android - 怎么修。错误 :Execution failed for task ':app:processDebugManifest' . VERSION@value value=(26.1.0)

android - 为 BottomNavigationView 设置默认 menuItem