覆盖 MaterialDrawer 的 RecyclerView
Overwrite MaterialDrawer's RecyclerView
根据 this commit, it is possible to rewrite drawer 的自定义 RecyclerView,但我不知道该怎么做。
任何人都可以向我解释如何正确地做到这一点吗?
您可以使用 withRecyclerView()
提供您想要的任何 RecyclerView。然后将选择它而不是默认实现。只需提供一个 RecyclerView
对象(您已通过 LayoutInflater
检索或以编程方式创建)设置 LayoutManager
和 Animator
以及您需要的所有其他内容。
如果您对默认行为中发生的事情感兴趣,请遵循此 link:
https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/DrawerBuilder.java#L1576
关于你的问题。也可以通过 getRecyclerView()
在构建 Drawer
后仅检索默认生成的 RecyclerView
,这也将允许您调整一些东西,例如 paddings
,以及其他事物。
看这里:https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/Drawer.java#L214
这里也讨论过:
https://github.com/mikepenz/MaterialDrawer/issues/1290
根据 this commit, it is possible to rewrite drawer 的自定义 RecyclerView,但我不知道该怎么做。
任何人都可以向我解释如何正确地做到这一点吗?
您可以使用 withRecyclerView()
提供您想要的任何 RecyclerView。然后将选择它而不是默认实现。只需提供一个 RecyclerView
对象(您已通过 LayoutInflater
检索或以编程方式创建)设置 LayoutManager
和 Animator
以及您需要的所有其他内容。
如果您对默认行为中发生的事情感兴趣,请遵循此 link: https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/DrawerBuilder.java#L1576
关于你的问题。也可以通过 getRecyclerView()
在构建 Drawer
后仅检索默认生成的 RecyclerView
,这也将允许您调整一些东西,例如 paddings
,以及其他事物。
看这里:https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/Drawer.java#L214
这里也讨论过: https://github.com/mikepenz/MaterialDrawer/issues/1290