drawerLayout其实是一个布局控件,跟LinearLayout等控件是一样的,但是drawerLayout带有滑动的功能,只要按照drawerLayout的规定布局方式写完布的局,就能有侧滑的效果。
1)在DrawerLayout中,第一个子视图必须是显示内容的视图,并且设置它的layout_width和layout_height属性是match_parent。
2)第二个观点是抽屉视图,并且设置属性layout_gravity=白髚右”,表示是从左边滑出还是右边滑出。设置它的layout_height=癿atch_parent”
ActionBarDrawerToggle就是DrawerLayout事件的监听器。
ActionBarDrawerToggle有3个方法可以被复写,分别用来实现DrawerLayout打开、关闭,滑动的事件监听:
-
<李> onDrawerOpened DrawerLayout滑出时调用李>
<李> onDrawerClosed DrawerLayout关闭时调用李>
<李> onDrawerSlide DrawerLayout滑动时调用李>
drawerLayout布局代码:
& lt; android.support.v4.widget.DrawerLayout xmlns: android=" http://schemas.android.com/apk/res/android " android: layout_width=" match_parent " android: layout_height=" match_parent " android: id=癅 + id/drawer_layout” 比;//主内容 & lt; FrameLayout android: id=癅 + id/content_frame” android: layout_width=" match_parent " android: layout_height=癿atch_parent”比; & lt; TextView android:重力="中心" android: id=癅 + id/drawer_text” android: layout_width=" match_parent " android: layout_height=" wrap_content " android:文本=" 123 "/比; & lt;/FrameLayout>//侧滑菜单 & lt;列表视图 android: id=癅 + id/left_drawer” android: layout_width=" 40 dp " android: layout_height=" match_parent " android: layout_gravity=翱肌? android: choiceMode=" singleChoice " android:分频器=" @android:颜色/透明” android: dividerHeight=" 0 dp” android:背景=" # 111 "/比; & lt;/android.support.v4.widget.DrawerLayout>
mainactivity.java代码
包com.example.wxj.drawerlayoutlearen; 进口android.support.v4.widget.DrawerLayout; 进口android.support.v7.app.ActionBarDrawerToggle; 进口android.support.v7.app.AppCompatActivity; 进口android.os.Bundle; 进口android.view.View; 进口android.widget.ListView; 进口android.widget.TextView; 公开课MainActivity延伸AppCompatActivity { 私人DrawerLayout mDrawerLayout; 私人TextView视图; 私人ListView mDrawerList; 私人ActionBarDrawerToggle mDrawerToggle; 私人CharSequence进行mDrawerTitle; 私人CharSequence进行mTitle; 私人String [] mPlanetTitles; @Override 保护空白> & lt; resources> & lt;字符串名称=" app_name "祝辞DrawerLayoutlearen & lt;字符串名称=翱拧?比; & lt;字符串名称=肮乇铡?比; & lt;/resources>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。