高度和阴影错误的工具栏

Rob*_*nde 9 android material-design android-design-library

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

<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>
Run Code Online (Sandbox Code Playgroud)

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

问题是工具栏高度或阴影的行为不符合我的预期.如果您观看下面的屏幕截图,您会发现问题.

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

当前工具栏

任何暗示都非常感激.

rom*_*4ek 6

正如那里所提到的那样,CollapsingToolbarLayout如果CollapsingToolbarLayout显示非固定元素,则会删除 - elevation :

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);
}
Run Code Online (Sandbox Code Playgroud)

因此,我所能建议的是CollapsingToolbarLayout通过CollapsingToolbarLayout从Google 复制原件来制作自己的,并在这种情况下进行更改.