我已经看到许多类型的布局管理器,例如:
LineraLayoutManager
RecyclerView.LayoutManager
ListViewLayoutManager
LayoutManager
实际上是什么,为什么使用它,以及LayoutManager
的不同类型是什么?在android中,所有UI组件(如Button
,TextView
,EditText
等)是否都有自己的LayoutManagers
? 最佳答案
适配器仅负责创建和来管理项目的 View (称为ViewHolder),这些类不决定显示它们时如何排列这些 View 。相反,它们依赖于一个称为LayoutManager的单独类。
LayoutManager是一个类,告诉适配器如何安排这些项目。例如,您可能希望将这些项目从上到下排成一行,或者可能希望将它们安排在“图库”之类的网格中。无需在适配器中编写此逻辑,而是在LayoutManager中编写该逻辑,然后将该LayoutManager传递给View(RecyclerView)。
初学者可能会问,为什么这样工作?
答案:灵活性。通过使用此模式,每当要更改项目的排列方式时,都无需修改Adapters或RecyclerView。而且,如果没有这种方法,您将只能使用预构建类提供的功能。您可以通过扩展LayoutManager类来构建自己的LayoutManager。
还包括一些常用的LayoutManager供您使用,我将列出其中的两个
根据方向将项目排列为1列或1行。例如,水平
LinearLayoutManager会将项目从左到右放置在1行中。
按照提供的行数和列数排列项目,非常类似于图库中的图像。
关于android - Android-什么是布局管理器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57152285/