如何在导航抽屉中添加可拖动图标

8

我的问题:

我想在导航抽屉中添加可拖动的图标。

当抽屉打开时,此图标与导航抽屉的列表视图结合在一起。

看起来类似于这样:

enter image description here

我已经尝试过的方法:

我在StackOverflow上搜索了类似问题,如:

Draggable drawer with a handle (instead of action bar) on top of other apps

但所有答案都建议使用第三方库。

我的问题:

1.是否有可能在导航抽屉中添加可拖动的图标?


我只想要类似的可拖动导航抽屉,不要使用Coc:) - Ranjithkumar
2
据我查看DrawerLayout源代码,它似乎无法完全按照您的要求运行。(https://android.googlesource.com/platform/frameworks/support/+/refs/heads/master/v4/java/android/support/v4/widget/DrawerLayout.java) 因此,您可以使用库,或者子类化DrawerLayout并创建自己的ViewDragHelper,使其按照您的要求运行。(要了解原理,请参见:http://flavienlaurent.com/blog/2013/08/28/each-navigation-drawer-hides-a-viewdraghelper/) - Jeroen Mols
1
祝你好运!如果你能让它正常工作,请告诉我。 - Jeroen Mols
@mike20132013 是的..但是图标要与打开和关闭的抽屉相结合。 - Ranjithkumar
您可以使用工具栏作为顶部栏,并添加自定义视图作为工具栏布局,在那里放置的图标来切换抽屉的开和关。 - mike20132013
显示剩余2条评论
1个回答

3

对于拖动布局,有一个有用的github库

您可以从左到右或任何位置进行拖动。它也会从左到右滑动,并且拖动也是可能的。拖动布局链接

    <RelativeLayout
            android:id="@id/left_big_content"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#FF00FFFF">
        <TextView android:text="LEFT"
                  android:layout_centerInParent="true"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"/>
    </RelativeLayout>

    <ImageView android:id="@id/left_big_handle"
               android:background="@drawable/handle"
               android:layout_gravity="top"
               android:layout_marginTop="12dp"
               android:layout_width="24dp"
               android:layout_height="80dp"/>
</com.kedzie.drawer.DraggedDrawer>

处理handle的handle.xml文件。
<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true" android:drawable="@drawable/status_bar_close_red" />

    <item android:drawable="@drawable/status_bar_close_off" />

</selector>

截图

输入图像描述

希望这对你有用。


很高兴能帮助你,@Ranjith。 - Maheshwar Ligade

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接