// Path: baselibrary/src/main/java/com/dim/skin/SkinConfig.java
// public class SkinConfig {
// 
//     public static SkinStyle getSkinStyle(Context context) {
//         SharedPreferences sharedPreferences = context.getSharedPreferences("SkinStyle",
//                 Activity.MODE_PRIVATE);
//         boolean nightMode = sharedPreferences.getBoolean("nightMode", false);
//         return nightMode ? SkinStyle.Dark : SkinStyle.Light;
//     }
// 
//     public static void setSkinStyle(Context context, SkinStyle skinStyle) {
//         SharedPreferences.Editor editor = context.getSharedPreferences("SkinStyle",
//                 Activity.MODE_PRIVATE).edit();
//         editor.putBoolean("nightMode", skinStyle == SkinStyle.Dark).apply();
//     }
// 
// }
// 
// Path: baselibrary/src/main/java/com/dim/skin/SkinStyle.java
// public enum SkinStyle {
// 
//     Dark,
//     Light//默认Light
// }
// 
// Path: baselibrary/src/main/java/com/dim/widget/TextView.java
// public class TextView extends AppCompatTextView  implements CircleRevealEnable,SkinEnable {
// 
//     private CircleRevealHelper mCircleRevealHelper ;
//     private SkinHelper mSkinHelper;
// 
//     public TextView(Context context) {
//         super(context);
//         init(null);
// 
//     }
// 
//     public TextView(Context context, AttributeSet attrs) {
//         super(context, attrs);
//         init(attrs);
//     }
// 
//     private void init(AttributeSet attrs) {
// 
//         mSkinHelper=SkinHelper.create(this);
//         mSkinHelper.init(this, attrs);
//         mSkinHelper.setCurrentTheme();
//         mCircleRevealHelper=new CircleRevealHelper(this);
//     }
// 
//     public TextView(Context context, AttributeSet attrs, int defStyleAttr) {
//         super(context, attrs, defStyleAttr);
//         init(attrs);
//     }
// 
// 
//     @Override
//     public void setOnClickListener(OnClickListener l) {
//         super.setOnClickListener(new SingleClickListener(l));
//     }
// 
//     @Override
//     public void draw(Canvas canvas) {
//         mSkinHelper.preDraw(this);
// 
//         mCircleRevealHelper.draw(canvas);
//     }
// 
// 
//     @Override
//     public void superDraw(Canvas canvas) {
//         super.draw(canvas);
//     }
// 
// 
// 
// 
//     @Override
//     public CRAnimation circularReveal(int centerX, int centerY, float startRadius, float endRadius) {
//         return mCircleRevealHelper.circularReveal(centerX,centerY,startRadius,endRadius);
//     }
// 
//     @Override
//     public void setSkinStyle(SkinStyle skinStyle) {
// 
//         mSkinHelper.setSkinStyle(skinStyle);
// 
// 
//     }
// }


import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import com.dim.skin.SkinConfig;
import com.dim.skin.SkinStyle;
import com.dim.widget.TextView;
        }
        if (mDarkBackgroundRes == -1) {
            mDarkBackgroundColor = attrs.getAttributeIntValue(MATERIALDESIGNXML, "nightBackground", -1);
        }
        mLightTextColorRes = attrs.getAttributeResourceValue(ANDROIDXML, "textColor", -1);
        if (mLightTextColorRes == -1) {
            mLightTextColor = attrs.getAttributeIntValue(ANDROIDXML, "textColor", -1);
        }
        mNightTextColorRes = attrs.getAttributeResourceValue(MATERIALDESIGNXML, "nightTextColor", -1);
        if (mNightTextColorRes == -1) {
            nightTextColor = attrs.getAttributeIntValue(MATERIALDESIGNXML, "nightTextColor", -1);
        }
    }

    public void setView(View view){
        this.mView=view;
    }

    public void setSkinStyle(SkinStyle skinStyle) {
        super.setSkinStyle(skinStyle);
        if(!mEnable){
            return;
        }
        if (skinStyle == SkinStyle.Light) {
            if (mLightBackgroundRes != -1) {
                mView.setBackgroundResource(mLightBackgroundRes);
            } else if (mLightBackgroundColor != -1) {
                mView.setBackgroundColor(mLightBackgroundColor);
            }

// Path: baselibrary/src/main/java/com/dim/skin/SkinConfig.java
// public class SkinConfig {
// 
//     public static SkinStyle getSkinStyle(Context context) {
//         SharedPreferences sharedPreferences = context.getSharedPreferences("SkinStyle",
//                 Activity.MODE_PRIVATE);
//         boolean nightMode = sharedPreferences.getBoolean("nightMode", false);
//         return nightMode ? SkinStyle.Dark : SkinStyle.Light;
//     }
// 
//     public static void setSkinStyle(Context context, SkinStyle skinStyle) {
//         SharedPreferences.Editor editor = context.getSharedPreferences("SkinStyle",
//                 Activity.MODE_PRIVATE).edit();
//         editor.putBoolean("nightMode", skinStyle == SkinStyle.Dark).apply();
//     }
// 
// }
// 
// Path: baselibrary/src/main/java/com/dim/skin/SkinStyle.java
// public enum SkinStyle {
// 
//     Dark,
//     Light//默认Light
// }
// 
// Path: baselibrary/src/main/java/com/dim/widget/TextView.java
// public class TextView extends AppCompatTextView  implements CircleRevealEnable,SkinEnable {
// 
//     private CircleRevealHelper mCircleRevealHelper ;
//     private SkinHelper mSkinHelper;
// 
//     public TextView(Context context) {
//         super(context);
//         init(null);
// 
//     }
// 
//     public TextView(Context context, AttributeSet attrs) {
//         super(context, attrs);
//         init(attrs);
//     }
// 
//     private void init(AttributeSet attrs) {
// 
//         mSkinHelper=SkinHelper.create(this);
//         mSkinHelper.init(this, attrs);
//         mSkinHelper.setCurrentTheme();
//         mCircleRevealHelper=new CircleRevealHelper(this);
//     }
// 
//     public TextView(Context context, AttributeSet attrs, int defStyleAttr) {
//         super(context, attrs, defStyleAttr);
//         init(attrs);
//     }
// 
// 
//     @Override
//     public void setOnClickListener(OnClickListener l) {
//         super.setOnClickListener(new SingleClickListener(l));
//     }
// 
//     @Override
//     public void draw(Canvas canvas) {
//         mSkinHelper.preDraw(this);
// 
//         mCircleRevealHelper.draw(canvas);
//     }
// 
// 
//     @Override
//     public void superDraw(Canvas canvas) {
//         super.draw(canvas);
//     }
// 
// 
// 
// 
//     @Override
//     public CRAnimation circularReveal(int centerX, int centerY, float startRadius, float endRadius) {
//         return mCircleRevealHelper.circularReveal(centerX,centerY,startRadius,endRadius);
//     }
// 
//     @Override
//     public void setSkinStyle(SkinStyle skinStyle) {
// 
//         mSkinHelper.setSkinStyle(skinStyle);
// 
// 
//     }
// }


// Path: baselibrary/src/main/java/com/dim/skin/hepler/DefaultViewSkinHelper.java
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import com.dim.skin.SkinConfig;
import com.dim.skin.SkinStyle;
import com.dim.widget.TextView;

        }
        if (mDarkBackgroundRes == -1) {
            mDarkBackgroundColor = attrs.getAttributeIntValue(MATERIALDESIGNXML, "nightBackground", -1);
        }
        mLightTextColorRes = attrs.getAttributeResourceValue(ANDROIDXML, "textColor", -1);
        if (mLightTextColorRes == -1) {
            mLightTextColor = attrs.getAttributeIntValue(ANDROIDXML, "textColor", -1);
        }
        mNightTextColorRes = attrs.getAttributeResourceValue(MATERIALDESIGNXML, "nightTextColor", -1);
        if (mNightTextColorRes == -1) {
            nightTextColor = attrs.getAttributeIntValue(MATERIALDESIGNXML, "nightTextColor", -1);
        }
    }

    public void setView(View view){
        this.mView=view;
    }

    public void setSkinStyle(SkinStyle skinStyle) {
        super.setSkinStyle(skinStyle);
        if(!mEnable){
            return;
        }
        if (skinStyle == SkinStyle.Light) {
            if (mLightBackgroundRes != -1) {
                mView.setBackgroundResource(mLightBackgroundRes);
            } else if (mLightBackgroundColor != -1) {
                mView.setBackgroundColor(mLightBackgroundColor);
            }

            if(mView instanceof TextView) {