超轻量级的安卓SlidingMenu库

时间:2022-06-25 20:37:52

这几天用手机写的一个超级轻量级的安卓版本的SlidingMenu库, 可以实现左右抽屉菜单的功能, 和网上的那个著名的SlidingMenu库非常相似。记下源码, 方便以后的学习。

PS:此代码为手机所写, 代码中难免会有或多或少的瑕疵, 并且用手机码代码是极度纠结的, 我也会时不时的偷个小懒, 一些不大重要的地方我也就没花大的心思好好的写, 所以请见谅思密达。

如有疑问, 请联系我, QQ邮箱 805447391@qq.com 希望和大家一起学习android, 一起交流一些实际开发中的经验, 嗯嗯。

// 源代码 :

额。没有源代码, 只是一个jar包。

资源链接:

http://download.csdn.net/detail/wang805447391/9101651


使用方法:

ps:使用前需要导入jar库。

package com.wang.myslidingmenulib;

import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import android.widget.ActionMenuView.*;
import android.view.ViewTreeObserver.*;
import android.view.GestureDetector.*;

public class MainActivity extends Activity implements OnClickListener
{
<strong>private MySlidingMenu mySlidingMenu;</strong>
private ListView listView = null;
private ListAdapter listAdapter = null;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

<strong>LayoutInflater lf = this.getLayoutInflater();
mySlidingMenu = new MySlidingMenu(this);
mySlidingMenu.addAllView(lf.inflate(R.layout.left, null), lf.inflate(R.layout.right, null), lf.inflate(R.layout.middle, null));
this.addContentView(mySlidingMenu, new ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));</strong>

findViewById(R.id.middleImageView1).setOnClickListener(this);
listView = (ListView)findViewById(R.id.leftListView1);
String[] listData = new String[]{"IndexPage", "Favor", "News", "Setting", "Exit"};
listAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listData);
listView.setAdapter(listAdapter);
}

@Override
public void onClick(View p1)
{
//Toast.makeText(MainActivity.this, "onClick", Toast.LENGTH_SHORT).show();
//this.mySlidingMenu.setMiddleViewX(100 + mySlidingMenu.getMiddleViewX());
/*if(mySlidingMenu.getTaskHost() != null)
mySlidingMenu.getTaskHost().iWant2GoRight();*/
mySlidingMenu.animateMiddleViewToRight();
}

<strong>@Override
public boolean dispatchTouchEvent(MotionEvent e){
if(this.mySlidingMenu.callTouchEvent(e))
return true;
return super.dispatchTouchEvent(e);
}</strong>

}



效果图:

再次ps:

本人缺一个会美工的女朋友, 不要介意我的界面please、、、

超轻量级的安卓SlidingMenu库

超轻量级的安卓SlidingMenu库

超轻量级的安卓SlidingMenu库