为什么使用DrawerLayout而不是NavigationView的CoordinatorLayout行为

问题描述 投票:1回答:2

我一直在研究DrawerLayout的实现,我开始想知道为什么Android支持库团队选择创建一个新的布局,而不是为Behavior创建一个新的CoordinatorLayout放入'NavigationView'。同样适用于SwipeRefreshLayout

他们决定以这种方式实施有什么特别的原因吗?

android android-support-library android-design-library
2个回答
0
投票

据我所知,CoordinatorLayout后来被介绍为Drawer布局。根据我的知识和理解,引入了抽屉布局,默认情况下,按照所有提到的设计指南,使用菜单文件将选项放到抽屉上。

如果我们谈论协调器布局,它的主要工作是调整其中的其他UI组件,因为布局的任何共同UI组件的某些更改。

因此,如果您谈到将抽屉布局的行为添加到协调器布局中,它将不适合协调器的布局工作。根据UI,抽屉布局显示在主布局外部,即协调器布局之外。此外,抽屉布局时没有任何调整因此它不能成为协调器布局的一部分。


0
投票

一切都表明没有技术上特别的理由使用DrawerLayout而不是CoordinatorLayout.Behavior。阅读它的实现几乎就像阅读行为实现一样。

事实上,侧板的实施,其模式基本上是一个抽屉,seems that it will be implemented as a Behavior,像BottomSheetBehavior相同的板材。

CoordinatorLayout.Behavior在版本24.1.0中引入,DrawerLayout在版本22.1.0中引入,所以也许他们知道DrawerLayout可以推广但不想弃用它并花更多时间在相同模式上,但这只是猜测。

© www.soinside.com 2019 - 2024. All rights reserved.