首页>代码>android皮肤更换>/SkinDemo/src/com/tutor/skindemo/SkinSettingManager.java
package com.tutor.skindemo;


import android.app.Activity;
import android.content.SharedPreferences;

/**
 * PadQzone皮肤管理器
 * @author frankiewei
 *
 */
public class SkinSettingManager {


	public final static String SKIN_PREF = "skinSetting";
	
	public SharedPreferences skinSettingPreference;
	
	private int[] skinResources = { R.drawable.default_wallpaper,
			R.drawable.wallpaper_c,R.drawable.wallpaper_d,R.drawable.wallpaper_f,
			R.drawable.wallpaper_g
	};
	
	private Activity mActivity;
	
	
	public SkinSettingManager(Activity activity) {
		this.mActivity = activity;	
		skinSettingPreference = mActivity.getSharedPreferences(SKIN_PREF, 3);
	}
	
	/**
	 * 获取当前程序的皮肤序号
	 * 
	 * @return
	 */
	public int getSkinType() {
		String key = "skin_type";
		return skinSettingPreference.getInt(key, 0);
	}

	/**
	 * 把皮肤序号写到全局设置里去
	 * 
	 * @param j
	 */
	public void setSkinType(int j) {
		SharedPreferences.Editor editor = skinSettingPreference.edit();
		String key  = "skin_type";
		
		editor.putInt(key, j);
		editor.commit();
	}
	
	/**
	 * 获取当前皮肤的背景图资源id
	 * 
	 * @return
	 */
	public int getCurrentSkinRes() {
		int skinLen = skinResources.length;
		int getSkinLen = getSkinType();
		if(getSkinLen >= skinLen){
			getSkinLen = 0;
		}
		
		return skinResources[getSkinLen];
	}
	
	/**
	 * 用于导航栏皮肤按钮切换皮肤
	 */
	public void toggleSkins(){
		
		int skinType = getSkinType();
		if(skinType == skinResources.length - 1){
			skinType = 0;
		}else{			
			skinType ++;
		}
		setSkinType(skinType);
		mActivity.getWindow().setBackgroundDrawable(null);
		try {
			mActivity.getWindow().setBackgroundDrawableResource(getCurrentSkinRes());
		} catch (Throwable e) {
			e.printStackTrace();

		}
		
		
	}
		
	/**
	 * 用于初始化皮肤
	 */
	public void initSkins(){	
		mActivity.getWindow().setBackgroundDrawableResource(getCurrentSkinRes());
	}

}
最近下载更多
wlw123 LV42020年12月28日
月亮
11111222 LV82019年10月12日
月亮月亮
王闹闹 LV22019年6月24日
星星星星
史梦瑶521 LV42019年6月20日
月亮
秀儿1234567 LV22019年5月30日
星星星星
wangshihua LV192019年5月7日
太阳星星星星星星
mahw9860 LV122019年2月26日
月亮月亮月亮
用户名真的已存在 LV22018年12月25日
星星星星
穿长筒靴的猫 LV52018年11月20日
月亮星星
geekcjj LV182018年10月3日
太阳星星星星
最近浏览更多
暂无贡献等级
高桥凉介2020年12月29日
暂无贡献等级
fengxiao LV52020年12月29日
月亮星星
wlw123 LV42020年12月28日
月亮
lizhoutao LV112020年12月11日
月亮月亮星星星星星星
natism LV92020年12月3日
月亮月亮星星
24798881362020年11月23日
暂无贡献等级
陌小宋 LV22020年10月25日
星星星星
ali_iii2020年9月16日
暂无贡献等级
路过路过路过 LV42020年6月19日
月亮
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友