如何将SwipeRefreshLayout功能添加到MaterialDrawer

时间:2016-03-09 12:26:07

标签: android materialdrawer

我想为MaterialDrawer实例的抽屉项添加一个pull-to-refresh功能。通常可以通过已提供此功能的支持库SwipeRefreshLayout来完成此操作,但我找不到将其集成到MaterialDrawer中的好方法。

有一个名为withDrawerLayout的构建器选项,但是这个函数需要一个实际上有一个DrawerLayout作为其根元素的布局 - 这显然对我的情况没有帮助。

有没有人有关于如何做到这一点的例子或想法?

1 个答案:

答案 0 :(得分:1)

对于MaterialDrawer

的低于5.1.2的版本,这是不可能的

对于您的用例,我实施了一项更改,允许您覆盖material_drawer_recycler_view.xml布局,并围绕它进行额外的视图。

所以要让SwipeRefreshLayout执行以下操作:

  1. 更新为 MaterialDrawer v5.1.2
  2. 在项目中创建名为material_drawer_recycler_view.xml的布局
  3. 添加SwipeRefreshLayout

    <android.support.v7.widget.RecyclerView
        android:id="@+id/material_drawer_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scrollbars="vertical" />
    

  4. 访问SwipeRefreshLayout

    SwipeRefreshLayout srl =(SwipeRefreshLayout)result.getSlider()。findViewById(R.id.material_drawer_swipe_refresh);

  5. 现在,您可以将其用作任何其他SwipeRefreshLayout

相关问题