Android侧滑菜单

来源:互联网 发布:淘宝上的电子烟可靠吗 编辑:程序博客网 时间:2024/05/30 23:23
其实侧滑菜单大家以为有点小难,但是我告诉你们,一点也不难,步骤繁琐不代表难
首先他的Xml类:
<android.support.v4.widget.DrawerLayout    android:id="@+id/drawerLayout"    android:layout_width="match_parent"    android:layout_height="match_parent">    <!--主布局-->    <LinearLayout        android:layout_width="match_parent"        android:layout_height="match_parent"        android:background="#e5e5e5">        <TextView            android:gravity="center"            android:layout_width="match_parent"            android:layout_height="match_parent"            android:text="主页面"            android:textSize="35sp"/>    </LinearLayout>    <!--    侧滑菜单    android:layout_gravity="start"从左边滑出    android:layout_gravity="end"从右边滑出    -->    <LinearLayout        android:layout_width="match_parent"        android:layout_height="match_parent"        android:background="#e5e5e5"        android:layout_gravity="start"        >
        <TextView            android:layout_width="match_parent"            android:layout_height="match_parent"            android:text="侧滑菜单"            android:gravity="center"            android:textSize="35sp"/>    </LinearLayout></android.support.v4.widget.DrawerLayout>
然后他的Class类的一些方法:
private Toolbar toolbar;private DrawerLayout mDrawerLayout;private ActionBarDrawerToggle mToggle;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    mDrawerLayout= (DrawerLayout) findViewById(R.id.drawerLayout);    ActionBar actionBar = getSupportActionBar();    //给左上角图标的左边加上一个返回的图标      参数:boolean,true为加上    actionBar.setDisplayHomeAsUpEnabled(true);//4.0及其以上系统,默认是false    //这个类提供了一种方便的方式来绑定的功能   DrawableLayout和框架ActionBar来实现推荐的导航抽屉设计    //参数:1.上下文   2.DrawerLayout    3,4:R.string.资源(照顾盲人,当盲人点击时,会发出声音)    mToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.string.open, R.string.close);    //将抽屉指示器的状态与连接的DrawableLayout同步其状态    mToggle.syncState();    mDrawerLayout.addDrawerListener(mToggle);    }@Overridepublic boolean onOptionsItemSelected(MenuItem item) {    if (mToggle.onOptionsItemSelected(item)){        return true;    }    return super.onOptionsItemSelected(item);}
其中ActionBarDrawerToggle方法调用的是V7包不要搞错了哦
还有就是
 mToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.string.open, R.string.close);里的
(R.string.open, R.string.close)参数,其实就是在values包下string.Xml文件中设置**就是你要随便定义的喽
<string name="open">**</string><string name="close">**</string>