问题 什么是ScrimInsetsFrameLayout?


什么是 ScrimInsetsFrameLayout

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


9588
2018-03-02 07:23


起源



答案:


它是Googles iosched中首先出现的一组类的一部分(我认为)。谷歌已经提供了源代码 在GitHub这里

值得下载并看看它。

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

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

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

没有它你可以做Draw​​erLayout,但看起来很干净,并且匹配Googles Material Design的目标。


14
2018-03-04 15:42