Android SlidingMenu 基本使用
2017/10/22 13:33:36
GIT地址
https://github.com/jfeinstein10/SlidingMenu
使用
- 下载
- 导入Android Studio
- 修复错误
- 开始编码
基本代码
效果
代码
MainActivity (使用SlidingMenu 创建实例)
public class MainActivity extends AppCompatActivity { private ImageView image_view; private ListView list_view; private List<String> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //创建实例 SlidingMenu menu = new SlidingMenu(MainActivity.this); //设置在左边 menu.setMode(SlidingMenu.LEFT); // 设置触摸屏幕的模式 menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); //设置设置阴影宽度 menu.setShadowWidthRes(R.dimen.shadow_width); //设置阴影颜色 menu.setShadowDrawable(R.color.colorAccent); // 设置滑动菜单视图的宽度 menu.setBehindOffsetRes(R.dimen.slidingmenu_offset); // 设置渐入渐出效果的值 menu.setFadeDegree(0.5f); /** * SLIDING_WINDOW 包含标题和ActionBar * SLIDING_CONTENT 不包含 */ menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT); //为侧滑菜单设置布局 menu.setMenu(R.layout.menu_layout); //查找菜单布局文件里的控件 list_view = (ListView) findViewById(R.id.list_view); image_view = (ImageView) findViewById(R.id.image_view); //创建数据 list = new ArrayList<>(); list.add("首页"); list.add("好友"); list.add("消息"); list.add("动态"); list.add("设置"); //ListView 设置适配器 list_view.setAdapter(new ArrayAdapter<String>(this, R.layout.support_simple_spinner_dropdown_item, list)); //设置点击事件 list_view.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(MainActivity.this, list.get(position), Toast.LENGTH_LONG).show(); } }); //设置点击事件 image_view.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "你点击了头像", Toast.LENGTH_LONG).show(); } }); } //Activity按钮的点击事件 public void onJump(View view) { startActivity(new Intent(MainActivity.this, Main2Activity.class)); } //菜单布局文件按钮的点击事件 public void onMain1(View view) { Toast.makeText(MainActivity.this, MainActivity.class.getSimpleName() + "", Toast.LENGTH_LONG).show(); } }
Main2Activity (Activity 继承 SlidingActivity)
public class Main2Activity extends SlidingActivity { private ImageView image_view; private List<String> list; private ListView list_view; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); setBehindContentView(R.layout.menu_layout); SlidingMenu menu = getSlidingMenu(); //设置在右边 menu.setMode(SlidingMenu.RIGHT); // 设置触摸屏幕的模式 menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); //设置阴影宽度 menu.setShadowWidthRes(R.dimen.shadow_width); //设置阴影颜色 menu.setShadowDrawable(R.color.colorAccent); // 设置滑动菜单视图的宽度 menu.setBehindOffsetRes(R.dimen.slidingmenu_offset); // 设置渐入渐出效果的值 menu.setFadeDegree(0.5f); image_view = (ImageView) findViewById(R.id.image_view); image_view.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(Main2Activity.this, "您点击了头像", Toast.LENGTH_LONG).show(); } }); list = new ArrayList<>(); list.add("苹果"); list.add("西瓜"); list.add("香蕉"); list_view = (ListView) findViewById(R.id.list_view); list_view.setAdapter(new ArrayAdapter<String>(Main2Activity.this, R.layout.support_simple_spinner_dropdown_item, list)); list_view.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(Main2Activity.this, list.get(position), Toast.LENGTH_LONG).show(); } }); } //设置布局文件的按钮的点击事件 public void onMain1(View view) { Toast.makeText(Main2Activity.this, Main2Activity.class.getSimpleName() + "", Toast.LENGTH_LONG).show(); } }
menu_layout.xml (菜单布局文件)