SlidingMenu的使用
来源:互联网 发布:淘宝店在那搞活动 编辑:程序博客网 时间:2024/06/05 19:26
对于SlidingMenu的使用首先第一步就是要将slidingmenu_library加入到工程中,然后让自己的项目依赖slidingmenu_library这个项目
SlidingMenu的使用非常简单 有两种方式得到SlidingMenu的对象
第一种:SlidingMenu menu = new SlidingMenu(this);
第二种: 如果Activity继承的SlidingFragmentActivity SlidingMenu menu = getSlidingMenu();
第一种需求:左侧和右侧加SlidingMenu
左侧的SlidingMenu的布局menu_layout
<?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_lv"
android:layout_width="match_parent"
android:layout_height="match_parent"></ListView>
</LinearLayout>
右侧的SlidingMenu的布局right_layout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="@android:color/holo_orange_light"
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
在Activity的主布局中activity_main
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="alice.bw.com.slindingmenubase.MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"
android:text="点击开关" />
</RelativeLayout>
在MainActivity中
public class MainActivity extends AppCompatActivity {
private static final String TAG = MainActivity.class.getSimpleName();
private SlidingMenu menu;
private ListView menu_lv;
private int[] colors = {R.color.color_a, R.color.color_b, R.color.color_c, R.color.color_d, R.color.color_e, R.color.color_f};
private String[] colorDes = {"A", "B", "C", "D", "E", "F"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
menu = new SlidingMenu(this);
// 设置模式 菜单是在左边还是在右边 默认在左边
menu.setMode(SlidingMenu.LEFT_RIGHT);
// 设置左侧菜单布局
menu.setMenu(R.layout.menu_layout);
// 设置菜单打开后距离右边的距离 主页面剩余的宽度
menu.setBehindOffsetRes(R.dimen.behind_offset);
// TOUCHMODE_FULLSCREEN 设置全屏触摸 可滑动菜单
//TOUCHMODE_MARGIN 设置边滑动出发 滑动菜单
//TOUCHMODE_NONE 滑动不触发菜单
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
//设置阴影图片
menu.setShadowDrawable(R.mipmap.ic_launcher);
// 设置阴影宽度
menu.setShadowWidth(10);
// 滑动 效果
menu.setFadeEnabled(true);
menu.setFadeDegree(0.8f);
// 设置右侧菜单
menu.setSecondaryMenu(R.layout.right_layout);
//关联到 Acitivity
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
menu.setOnCloseListener(new SlidingMenu.OnCloseListener() {
@Override
public void onClose() {
Log.i(TAG, "onClose: ");
}
});
menu.setOnClosedListener(new SlidingMenu.OnClosedListener() {
@Override
public void onClosed() {
Log.i(TAG, "onClosed: ");
}
});
menu.setOnOpenedListener(new SlidingMenu.OnOpenedListener() {
@Override
public void onOpened() {
Log.i(TAG, "onOpened: ");
}
});
menu.setOnOpenListener(new SlidingMenu.OnOpenListener() {
@Override
public void onOpen() {
Log.i(TAG, "onOpen: ");
}
});
menu_lv = (ListView) findViewById(R.id.menu_lv);
ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, colorDes);
menu_lv.setAdapter(adapter);
menu_lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
view.setBackgroundColor(colors[i]);
}
});
}
public void onClick(View view) {
// 菜单的 开关
menu.toggle();
}
}
- android slidingmenu的使用
- SlidingMenu的使用例子
- slidingMenu的使用
- SlidingMenu的使用
- slidingMenu的使用教程
- SlidingMenu的使用
- 关于slidingmenu的使用
- slidingMenu的使用教程
- SlidingMenu的使用
- SlidingMenu的使用笔记
- SlidingMenu的使用
- SlidingMenu的使用
- SlidingMenu的简单使用
- 关于SlidingMenu的使用
- slidingMenu的使用
- SlidingMenu的使用
- Android SlidingMenu的使用
- SlidingMenu的详细使用
- 【DP】51Nod 1274 最长递增路径
- Python 豆瓣影评抓取
- C++中四种类型转换方式
- 社团检测(Community Detection)和聚类(Clustering)
- 【C++】PCH 警告:标头停止点不能位于宏或#if块中
- SlidingMenu的使用
- Eclipse的WorkingSet使用
- 如何更新npm版本
- LightOj-1022-Circle in Square
- HOG特征
- 单片机中#ifndef,#define用法
- 创业公司出现危机是去是留
- Java取余操作时的符号问题
- IBM如何看待SOC和态势感知