DrawerLayout使用一二事

最近老大讓我試試用Drawerlayout去做側滑效果,不要再用什麼鬼popoupwindow之類的了。

我惆悵的想了想,用官方的應該會比較給力,於是,drawerlayout用起。

感覺用起來還是挺方便的,稍微注意一點東西就好了。

先循例來一下代碼:

<android.support.v4.widget.DrawerLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/drawer_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <!-- 這是主要內容的佈局 -->
        <FrameLayout
            android:id="@+id/content_frame"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

        <!-- 這是側滑內容的佈局 -->
        <ListView
            android:id="@+id/left_drawer"
            android:layout_width="240dp"
            android:layout_height="match_parent"
            android:layout_gravity="left"<!-- 這裏就決定了側滑從那一方向出來,可以是左右 --></span>
            android:background="#111"
            android:choiceMode="singleChoice"
            android:divider="@android:color/transparent"
            android:dividerHeight="0dp" />
    </android.support.v4.widget.DrawerLayout>

使用drawerlayout有幾個規則:

1、一定要有一個內容的佈局以及一個側滑的佈局,就兩個佈局組成這個格式。

2、如果你想側滑佈局中控件自適應寬度,那麼所有的控件寬度都需要設爲match_parent,不然的話,你試試設定一個例如"150dp”的寬度值,你會感覺到drawerlayout的噁心之處(可能這也是它的特點)。

一些常用函數方法:

DrawerLayout dl_main;//整體的drawerlayout佈局
dl_main.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED); //關閉滑動打開側滑手勢
if(dl_main != null){
    if(dl_main.isDrawerOpen(Gravity.RIGHT)){//若側滑還沒有關閉則關閉
        dl_main.closeDrawer(Gravity.RIGHT);
    }
}

當然更多詳情可以去官網查看,這是最官方的。

http://www.android-doc.com/reference/android/support/v4/widget/DrawerLayout.html

(記得把梯子帶上)

發佈了21 篇原創文章 · 獲贊 11 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章