首页 > 解决方案 > 带有 LENGTH_LONG 的 Snackbar 的实际持续时间是多少

问题描述

由于我已将我的 Android 项目迁移到 AndroidX,因此我收到以下lint错误:

Error: Must be one of: Snackbar.LENGTH_INDEFINITE, Snackbar.LENGTH_SHORT, Snackbar.LENGTH_LONG [WrongConstant]
        Snackbar snackbar = Snackbar.make(rootView, message, sticky ? Snackbar.LENGTH_INDEFINITE : 4500

因此,我现在没有定义自定义持续时间(4500 毫秒),而是使用Snackbar.LENGTH_LONG. 由于我正在实施一些基于时间的操作,这取决于小吃栏的可见时间,因此我需要知道Snackbar.LENGTH_LONG以毫秒为单位的实际持续时间。我如何找出该值?

这些文档在这里并没有真正的帮助:

在短时间内显示 Snackbar。

标签: androidandroidxlintandroid-snackbar

解决方案


在源代码中进行一些钓鱼之后,您将在以下位置找到这些常量SnackbarManager

private static final int SHORT_DURATION_MS = 1500;
private static final int LONG_DURATION_MS = 2750;

因此,要回答您的问题,长长度的实际持续时间是 2750 毫秒。


com.google.android.material.snackbar.SnackbarManager

在此处输入图像描述


推荐阅读