【问题标题】:Default action bar elevation默认操作栏高度
【发布时间】:2014-12-19 14:40:59
【问题描述】:

我想在自定义布局元素中使用标高,并且我想使用默认操作栏标高值在 XML 中设置该元素的值。我找不到在 XML 中获取它的方法,我想避免在代码中调用 getElevation()。有什么建议吗?

【问题讨论】:

    标签: android android-actionbar


    【解决方案1】:

    默认值是 8dp,用这个值创建维度并在整个项目中使用,我从源获得它,但 the material design guidelines 声明操作栏高度应该是 4dp。

    【讨论】:

    • 它不存在于某处?您是如何找到这个值的?
    • @KirillShalnov 我明白了。为什么在设置为操作栏的工具栏上设置高程 - 不执行任何操作?我尝试在某些情况下将其设置为 0,在其他情况下将其设置为 8dp,但它似乎没有做任何事情......
    • @KirillShalnov 材料设计指南规定操作栏高度应为 4dp:google.com/design/spec/what-is-material/…
    • 我确认AppCompat中的默认ActionBar高程还是8dp:android.googlesource.com/platform/frameworks/support.git/+/…但是设计支持库中的App Bar高程是4dp,所以这里肯定有不一致的地方。
    • 经过一番调查,发现操作系统材质主题中的默认操作栏高度从 8dp (Android 5) 更改为 4dp (Android 6)。我在 Android 错误跟踪器上提出了一个问题,下一个版本的 AppCompat 将使用 4dp 作为默认 ActionBar 的默认值,而不是目前的 8dp。 code.google.com/p/android/issues/detail?id=219400
    【解决方案2】:

    根据材料设计规范,应用栏的标准高度为 4dp。链接在这里: https://material.io/guidelines/material-design/elevation-shadows.html#elevation-shadows-shadows

    【讨论】:

      【解决方案3】:

      操作栏的默认高度是4dp。我做了一个小实验,在操作栏的正下方创建了一个自定义视图,并将其高度设置为 4dp。所以,两者看起来都一样。官方文档还提到了操作栏的 4dp 标准高度。

      1. 导航抽屉:16dp
      2. 应用栏:4dp
      3. 卡片:1dp 到 8dp
      4. FAB:6dp
      5. 按钮:2dp 到 8dp
      6. 对话:24dp

      这里App bar指的是Action bar

      参考:Elevation

      【讨论】:

        【解决方案4】:

        Here 是海拔高度可用的官方资源。

        【讨论】:

          【解决方案5】:

          AppBarLayout 的默认高度为@dimen/design_appbar_elevation(即4dp)。 Actionbar 具有 @dimen/abc_action_bar_elevation_material 作为默认高度(也是 4dp)。

          这些值可以分别在Widget.Design.AppBarLayoutstateListAnimatorWidget.AppCompat.ActionBar 的父级中找到。 Toolbar 似乎没有任何默认高度。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2022-01-24
            • 1970-01-01
            • 2012-12-02
            • 2013-01-06
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多