当前位置: 代码迷 >> Android >> 2013.12.04 (四)——— android SlidingMenu之AttachExample
  详细解决方案

2013.12.04 (四)——— android SlidingMenu之AttachExample

热度:10   发布时间:2016-04-28 07:12:14.0
2013.12.04 (4)——— android SlidingMenu之AttachExample
2013.12.04 (4)——— android SlidingMenu之AttachExample

这个例子是介绍如果在普通的Activity和FragmentActivity里面使用SlidingMenu

package com.jeremyfeinstein.slidingmenu.example;import android.os.Bundle;import android.support.v4.app.FragmentActivity;import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;public class AttachExample extends FragmentActivity {	private SlidingMenu menu;	@Override	public void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setTitle(R.string.attach);		// set the Above View		setContentView(R.layout.content_frame);		getSupportFragmentManager()		.beginTransaction()		.replace(R.id.content_frame, new SampleListFragment())		.commit();		// configure the SlidingMenu		menu = new SlidingMenu(this);		menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);		menu.setShadowWidthRes(R.dimen.shadow_width);		menu.setShadowDrawable(R.drawable.shadow);		menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);		menu.setFadeDegree(0.35f);		menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);		menu.setMenu(R.layout.menu_frame);		getSupportFragmentManager()		.beginTransaction()		.replace(R.id.menu_frame, new SampleListFragment())		.commit();	}	@Override	public void onBackPressed() {		if (menu.isMenuShowing()) {			menu.showContent();		} else {			super.onBackPressed();		}	}}



注意 这个是继承了普通的FragmentActivity, 没有继承SlidingFragmentActivity,所以也需要注意一些
1、
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);menu.setMenu(R.layout.menu_frame);

因为没有继承SlidingFragmentActivity,所以没有了setBehindContentView,直接调用menu.setMenu就可以,setBehindContentView里面也是调用了这个
2、
相应SlidingMenu里的点击事件,因为SlidingMenu已经被包含在了Activity中了,所以直接findViewById(id),拿到view之后就可以进行相应的处理。

3、重写onBackPressed
       @Override	public void onBackPressed() {		if (menu.isMenuShowing()) {			menu.showContent();		} else {			super.onBackPressed();		}	}


实现点击返回键,隐藏侧边栏

  相关解决方案