抽象出Share SDK里面的侧滑效果(三)

2014-11-24 02:50:40 · 作者: · 浏览: 1
c class Page1 extends SlidingMenuPage implements OnClickListener { private ImageView backView; public Page1(final SlidingMenu menu) { super(menu); View pageView = getPage(); backView = (ImageView) pageView.findViewById(R.id.page1_iv_back); backView.setOnClickListener(this); } @Override protected View initPage() { return LayoutInflater.from(menu.getContext()).inflate(R.layout.page1, null); } @Override public void onClick(View v) { if (v == backView) { if (menu.isMenuShown()) { menu.hideMenu(); } else { menu.showMenu(); } } } }

Page2:

package com.home.testslidingmenu;

import m.framework.ui.widget.slidingmenu.SlidingMenu;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

public class Page2 extends SlidingMenuPage implements OnClickListener {
	private ImageView backView;

	public Page2(final SlidingMenu menu) {
		super(menu);
		View pageView = getPage();
		backView = (ImageView) pageView.findViewById(R.id.page2_iv_back);
		backView.setOnClickListener(this);
	}

	@Override
	protected View initPage() {
		return LayoutInflater.from(menu.getContext()).inflate(R.layout.page2,
				null);
	}

	@Override
	public void onClick(View v) {
		if (v == backView) {
			if (menu.isMenuShown()) {
				menu.hideMenu();
			} else {
				menu.showMenu();
			}
		}
	}
}


SlidingMenuPage:

package com.home.testslidingmenu;

import android.view.View;
import m.framework.ui.widget.slidingmenu.SlidingMenu;

/** 所有侧栏页面的父类 */
public abstract class SlidingMenuPage {
	protected SlidingMenu menu;
	private View pageView;

	public SlidingMenuPage(SlidingMenu menu) {
		this.menu = menu;
		pageView = initPage();
	}

	protected abstract View initPage();

	/**
	 * 获取页面的View实例
	 * 
	 * @return
	 */
	public View getPage() {
		return pageView;
	}
}

page1.xml:

  

  

    
    
     
     
   

    
   


  

page2.xml:

  

  

    
    
     
     
   

    
   


  

colors.xml:

  

  
    
   
    #ff39393b
   
    
   
    #00000000
   
    
   
    #ff2c2c2e
   
    
   
    #fff5f5f5
   

  

drawable中image_back.xml:

  

  

    
   
    
   

  

color中normal_gray_pressed_white.xml:

  

  
	
   
	
   
	
   

  

需要使用到的jar:mframework.jar和ShareSDK-Core-2.3.2.jar