SlidingMenu是Android上的一个侧滑菜单,如下图所示:
今天主要记录的是SlidingMenu的使用,我们可以从Github上下载该开源项目,下载地址是:https://github.com/jfeinstein10/SlidingMenu
使用SlidingMenu的步骤比较简单,只需要如下几步:
1、在自己的项目中引入SlidingMenu的library
2、在Activity中加入如下代码:
slidingMenu = new SlidingMenu(this); //设置滑动模式,从左侧滑出 slidingMenu.setMode(SlidingMenu.LEFT); //设置菜单的View slidingMenu.setMenu(menuView); //将SlidingMenu加到当前的Activity上 slidingMenu.attachToActivity(this, SlidingMenu.LEFT); //设置菜单滑出后,距离屏幕右侧的距离 slidingMenu.setBehindOffset(200); //设置侧滑菜单的阴影 slidingMenu.setShadowDrawable(R.drawable.shadow); //设置阴影区域的宽度 slidingMenu.setShadowWidthRes(R.dimen.sliding_menu_shadow_width); //设置菜单滑出的模式,这里是在整个屏幕上滑动都可以让侧滑菜单显示 slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); //让菜单先显示或关闭 slidingMenu.toggle();上面的代码里,为SlidingMenu设置了一个菜单布局文件,这个布局文件的内容如下:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ListView android:id="@+id/menu_list_view" android:dividerHeight="0.8dp" android:divider="#d3d3d3" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout>就是一个ListView,用于显示菜单项
菜单项的初始化代码如下:
private void initMenuView(){ //获取侧滑菜单对应的View menuView = LayoutInflater.from(this).inflate(R.layout.menu, null); //获取侧滑菜单中的ListView menuListView = (ListView) menuView.findViewById(R.id.menu_list_view); //给菜单添加20个菜单项 menuItems = new String[20]; for(int i = 0; i < 20; i++){ menuItems[i] = "菜单" + (i + 1); } //给ListView设置adapter menuListView.setAdapter(new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, android.R.id.text1, menuItems)); //给ListView设置点击事件 menuListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { String menuText = menuItems[position]; Toast.makeText(MainActivity.this, menuText, Toast.LENGTH_SHORT).show(); slidingMenu.toggle(); } }); }上面的代码基本上就完成了开始图中的侧滑菜单demo,下面给出AndroidStudio工程源代码。
源代码下载点击这里
<p>版权声明:本文为博主原创文章,未经博主允许不得转载。</p>