Skip to content

Commit

Permalink
AppCompatDelegate.isCompatVectorFromResourcesEnabled() 返回值决定是否开启Vecto…
Browse files Browse the repository at this point in the history
…rDrawable换肤
  • Loading branch information
ximsfei committed Dec 11, 2017
1 parent 13ddefd commit 82f5003
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ public class SkinCompatManager extends SkinObservable {
private List<SkinLayoutInflater> mInflaters = new ArrayList<>();
private List<SkinLayoutInflater> mHookInflaters = new ArrayList<>();
private SparseArray<SkinLoaderStrategy> mStrategyMap = new SparseArray<>();
private boolean mSkinVectorDrawableEnable = false;
private boolean mSkinAllActivityEnable = true;
private boolean mSkinStatusBarColorEnable = true;
private boolean mSkinWindowBackgroundColorEnable = true;
Expand Down Expand Up @@ -208,25 +207,10 @@ public void restoreDefaultTheme() {
loadSkin("");
}

/**
* 设置是否开启矢量图换肤.
*
* @param enable true: 开启矢量图换肤; false: 关闭矢量图换肤.
* @return
*/
public SkinCompatManager setSkinVectorDrawableEnable(boolean enable) {
mSkinVectorDrawableEnable = enable;
return this;
}

public boolean isSkinVectorDrawableEnable() {
return mSkinVectorDrawableEnable;
}

/**
* 设置是否所有Activity都换肤.
*
* @param enable true: 所有Activity都换肤; false: 实现SkinCompatSupportable的Activity支持换肤.
* @param enable true: 所有Activity都换肤; false: 添加注解Skinable或实现SkinCompatSupportable的Activity支持换肤.
* @return
*/
public SkinCompatManager setSkinAllActivityEnable(boolean enable) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import android.content.res.XmlResourceParser;
import android.graphics.drawable.Drawable;
import android.support.annotation.AnyRes;
import android.support.v7.app.AppCompatDelegate;
import android.support.v7.content.res.AppCompatResources;
import android.text.TextUtils;
import android.util.TypedValue;
Expand Down Expand Up @@ -146,7 +147,7 @@ private Drawable getSkinDrawable(Context context, int resId) {
}

private Drawable getSkinDrawableCompat(Context context, int resId) {
if (SkinCompatManager.getInstance().isSkinVectorDrawableEnable()) {
if (AppCompatDelegate.isCompatVectorFromResourcesEnabled()) {
if (!isDefaultSkin) {
try {
return SkinCompatDrawableManager.get().getDrawable(context, resId);
Expand Down

0 comments on commit 82f5003

Please sign in to comment.