【问题标题】:Toolbar with a wrong height and shadow高度和阴影错误的工具栏
【发布时间】:2016-04-30 10:59:54
【问题描述】:

我正在尝试使用高程和设计库向工具栏添加阴影。布局代码类似于:

<android.support.design.widget.CoordinatorLayout ... >
  <android.support.design.widget.AppBarLayout ... >
    <android.support.design.widget.CollapsingToolbarLayout ... >
       <android.support.v7.widget.Toolbar
           android:id="@+id/app_bar"
           android:layout_width="match_parent"
           android:layout_height="?actionBarSize"
           app:contentInsetStart="16dp"
           android:background="@color/colorPrimary"
           android:elevation="16dp"
        />
    </android.support.design.widget.CollapsingToolbarLayout>
  </android.support.design.widget.AppBarLayout>

完整的应用程序源代码可在github 上找到。

问题是工具栏高度或阴影的行为与我预期的不同。如果您观看下面的屏幕截图,您会注意到问题。

我需要做的是显示蓝色区域下方的阴影。

非常感谢任何提示。

【问题讨论】:

  • 投影可能来自您的海拔高度。除此之外,我从来没有使用过CollapsingToolbarLayout,也没有使用过AppBarLayout,所以我什至不知道你的身高没有达到预期是什么意思。

标签: android material-design android-design-library


【解决方案1】:

there 所述,它是通过实现CollapsingToolbarLayout - 如果CollapsingToolbarLayout 显示非固定元素,则会删除高度:

if (Math.abs(verticalOffset) == scrollRange) {
  // If we have some pinned children, and we're offset to only show those views,
  // we want to be elevate
  ViewCompat.setElevation(layout, layout.getTargetElevation());
} else {
  // Otherwise, we're inline with the content
  ViewCompat.setElevation(layout, 0f);
}

所以,我只能建议通过从 Google 复制原始 CollapsingToolbarLayout 来制作自己的 CollapsingToolbarLayout,并在此条件下进行更改。

【讨论】:

    【解决方案2】:

    将海拔移动到 AppBarLayout。 CollapsingToolbarLayout 的大小会发生变化,因此在 AppBarLayout 上设置它会在正确的位置创建阴影。

    <android.support.design.widget.CoordinatorLayout ... >
    <android.support.design.widget.AppBarLayout
          android:elevation="16dp">
      <android.support.design.widget.CollapsingToolbarLayout ... >
         <android.support.v7.widget.Toolbar ... />
      </android.support.design.widget.CollapsingToolbarLayout>
    </android.support.design.widget.AppBarLayout>
    

    【讨论】:

    • 非常感谢您的及时答复。我已经尝试过了,所以将背景颜色添加到 AppBarLayout 并不起作用。
    猜你喜欢
    • 2018-01-03
    • 1970-01-01
    • 2020-05-04
    • 1970-01-01
    • 1970-01-01
    • 2019-08-15
    • 2016-10-27
    • 2017-07-13
    • 2019-12-23
    相关资源
    最近更新 更多