什么是ScrimInsetsFrameLayout?

时间:2015-03-02 07:23:56

标签: android navigation-drawer android-5.0-lollipop android-toolbar

是什么 ScrimInsetsFrameLayout

我在使用ToolBar的Navigation Drawer中工作,在大多数教程中他们使用 ScrimInsetsFrameLayout , 它可以用于什么目的解释breif?

1 个答案:

答案 0 :(得分:14)

它是Googles iosched中首先出现的一组类的一部分(我认为)。 Google已提供源代码on GitHub here

值得下载并查看它。

ScrimInsetsFrameLayout有注释 - 在传递给{@link #fitSystemWindows(Rect)}的插图中绘制内容的布局,即UI chrome上方的区域 (状态和导航栏,叠加操作栏)。

如果您下载编译并安装应用程序,您可以看到DrawerLayout位于ToolBar上方和屏幕边缘。 ScrimInsetsFrameLayout允许您执行此操作。

您还可以看到ScrimInsetsFrameLayout扩展了FrameLayout,而FrameLayout又扩展了ViewGroup和View。 View有setFitsSystemWindows的引用,允许你设置android:fitsSystemWindows =" true"在您使用ScrimInsetsFrameLayout的xml文件中。

没有它你可以做Draw​​erLayout,但看起来非常干净,并且符合Googles Material Design的目标。