问题标签 [android-snackbar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
153413 浏览

android - Activity 启动时如何显示 Snackbar?

我想Snackbar (android.support.design.widget.Snackbar)在活动开始时显示 android,就像我们显示Toast.

但问题是我们必须在创建时指定父布局Snackbar

当我们在没有任何点击事件的活动开始时显示时如何提供父布局Snackbar(如果它是一个点击事件,我们可以轻松地传递父视图)?

0 投票
1 回答
1234 浏览

android - 解除 Snackbar/ViewDragHelper 时出现 ArrayIndexOutOfBoundsException

在我的一些应用程序中实施新功能后Snackbar,我收到以下错误:

我在这里使用相同的设置:https ://github.com/chrisbanes/cheesesquare/blob/master/app/src/main/java/com/support/android/designlibdemo/MainActivity.java

概括:

  • 我正在使用Snackbar
  • 我正在使用CoodinartorLayout
  • 我没有使用DrawerLayout

谷歌问题:

根据android.support.v4.widget.ViewDragHelper.shouldInterceptTouchEvent(SourceFile:1014) at异常中的行,我猜它与“解雇”有关Snackbar

也许我不应该dismissSnackbaronPause我曾经用Toasts 来做这个。

0 投票
1 回答
354 浏览

android - 动态添加的 FloatingActionButton 不采用随 Snackbar 移动的行为

我正在尝试将 a 添加FloatingActionButtonCoordinatorLayoutActivityonCreate(). 这基本上是有效的。它接收Coordinator.LayoutParams. gravity = BOTTOM | RIGHTSnackbar(附加到同一个协调器)弹出时,它位于按钮的下方。

如果我FloatingActionButton通过 xml 将其嵌入到协调器中,它会像宣传的那样工作。

嵌入按钮和动态添加的按钮基于相同的 xml 源,通过<include />(工作)和通过addView( inflate( ... ) )(不工作)添加。调试工具中的视图层次结构是相同的。

我在这里注意到的一件奇怪的事情是,onCreate()在充气/添加之后,工厂的行为是null. 在Snackbar出现之前,它神奇地收到了一个FloatingActionButton.Behavior

在添加视图时手动设置FloatingActionButton.Behavior没有帮助。

如果我可以访问设计库的源代码,这将有助于我了解发生了什么,但它似乎还不可用。

0 投票
22 回答
45371 浏览

android - 如何将支持库小吃栏文本颜色设置为 android:textColor 以外的颜色?

所以我开始在设计支持库中使用新的 Snackbar,但是我发现当你在你的主题中定义“android:textColor”时,它适用于snackbar 的文本颜色。如果您的主要文本颜色较暗,这显然是一个问题。

在此处输入图像描述

有谁知道解决这个问题的方法或对我应该如何为文本着色有建议?

编辑 2017 年 1 月:(回答后)

虽然有一些自定义解决方案可以解决以下问题,但提供正确的 Snackbars 主题方法可能会很好。

首先,您可能根本不应该android:textColor在主题中定义(除非您真的知道使用主题的范围)。这基本上设置了连接到您的主题的每个视图的文本颜色。如果要在视图中定义非默认文本颜色,请android:primaryTextColor在自定义视图中使用并引用该属性。

但是,为了将主题应用于Snackbar,请参考第三方材料文档中的此质量指南:http: //www.materialdoc.com/snackbar/(遵循程序化主题实现,使其不依赖于 xml 样式)

以供参考:

(您也可以创建自己的自定义Snackbar布局,请参阅上面的链接。如果这种方法感觉太老套,并且您希望通过可能的支持库更新让您的自定义 Snackbar 持续存在,请这样做)。

或者,请参阅下面的答案以获得类似且可能更快的答案来解决您的问题。

0 投票
10 回答
13838 浏览

android - 自定义主题会干扰小吃店背景颜色

在试用新的设计支持库时,我添加了一个快餐栏;但与它的主背景不同的是,文本区域没有使用默认值着色#323232。相反,它看起来像这样。它的颜色似乎来自android:backgroundmy 中自定义主题中定义的值styles.xml,如下所示:

如果我尝试用

它只影响主背景,像这样,文本背景仍然被自定义主题着色。有没有办法既保留我的自定义主题,又拥有标准的小吃店?谢谢!

0 投票
4 回答
24989 浏览

android - Snackbar 操作文本颜色不变

我想更改我的快餐栏的操作文本颜色,但由于某种原因它不起作用。

我使用下面的代码来显示一个小吃店:

0 投票
1 回答
1433 浏览

xamarin.android - Snackbar 问题(仅在调试模式下)

我在 android 支持设计库中遇到了 Snackbar 的问题。奇怪的是,它只发生在我在调试模式下运行我的应用程序时,在发布模式下它一切正常。

有人对这个问题有想法吗?这似乎是支持库中的一个错误。

代码

例外

07-06 11:47:50.414 I/MonoDroid(13296):Java.Lang.ClassCastException:抛出了“Java.Lang.ClassCastException”类型的异常。07-06 11:47:50.414 I/MonoDroid(13296): 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () 07-06 11:47:50.414 I/MonoDroid(13296): 在 OverAllField.XamarinAndroid.Fragments.Planning .PlanningFragment.FloatingActionButton_Click (object,System.EventArgs) [0x00001] in c:\Development\Apps\FieldService-Tablet\OverAllF07-06 11:47:50.414 I/MonoDroid(13296): 在 Android.Runtime.JNIEnv.CallStaticObjectMethod ( intptr,intptr,Android.Runtime.JValue*) [0x00064] 在 /Users/builder/data/lanes/1502/24855232/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:1301 07 -06 11:47:50.414 I/MonoDroid(13296): 在 Android.Support.Design.Widget.Snackbar.Make (Android.Views.View,Java.Lang.ICharSequence,int) 07-06 11:47:50。

0 投票
7 回答
24193 浏览

android - 有什么方法可以将图标添加到 Snackbar?

这是我的 Snackbar 代码:

无论如何要在其中添加图标而不是文本.setAction

我知道谷歌建议不要在 Snackbar 中使用图标,但我想使用它。

0 投票
1 回答
4815 浏览

android - Android - 活动之间的 Snackbar

当我在Activity B中的回调完成时,我如何在Activity A中显示小吃栏(coordinatorLayout 在这里)?Snackbar 需要我的 coordinatorLayout 但我不能从 Activity B 给它。

活动乙:

感谢帮助。

0 投票
1 回答
169 浏览

android - 与 Toast 一起显示的 Snackbar

我正在使用 Google 的设计支持来展示 Snackbars。在我编译 apk 并在手机 (Nexus 5) 上运行它之后,Snackbar 与 Toast 一起显示。直接从 Android Studio 运行可以正常工作(仅显示 Snackbar)。任何帮助将不胜感激。如何禁用吐司并仅显示 Snackbar