mirror of
https://github.com/Tencent/QMUI_Android.git
synced 2026-10-26 17:59:34 +08:00
skin for QMUITabSegment
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package com.qmuiteam.qmui.skin;
|
||||
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.view.View;
|
||||
|
||||
import com.qmuiteam.qmui.R;
|
||||
import com.qmuiteam.qmui.util.QMUIResHelper;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
public class QMUISkinHelper {
|
||||
|
||||
public static int getSkinColor(View view, int colorAttr) {
|
||||
Integer skin = (Integer) view.getTag(R.id.qmui_skin_current_index);
|
||||
Resources.Theme theme;
|
||||
if (skin == null || skin <= 0) {
|
||||
theme = view.getContext().getTheme();
|
||||
} else {
|
||||
theme = QMUISkinManager.getInstance(view.getContext()).getTheme(skin);
|
||||
}
|
||||
return QMUIResHelper.getAttrColor(theme, colorAttr);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static Drawable getSkinDrawable(View view, int drawableAttr) {
|
||||
Integer skin = (Integer) view.getTag(R.id.qmui_skin_current_index);
|
||||
Resources.Theme theme;
|
||||
if (skin == null || skin <= 0) {
|
||||
theme = view.getContext().getTheme();
|
||||
} else {
|
||||
theme = QMUISkinManager.getInstance(view.getContext()).getTheme(skin);
|
||||
}
|
||||
return QMUIResHelper.getAttrDrawable(view.getContext(), theme, drawableAttr);
|
||||
}
|
||||
}
|
||||
@@ -82,7 +82,7 @@ public final class QMUISkinManager {
|
||||
|
||||
private Resources mResources;
|
||||
private String mPackageName;
|
||||
private SparseArray<SkinItem> mThemes = new SparseArray<>();
|
||||
private SparseArray<SkinItem> mSkins = new SparseArray<>();
|
||||
private HashMap<String, IQMUISkinRuleHandler> mRuleHandlers = new HashMap<>();
|
||||
|
||||
// Actually, ViewGroup.OnHierarchyChangeListener is a better choice, but it only has a setter.
|
||||
@@ -149,7 +149,7 @@ public final class QMUISkinManager {
|
||||
|
||||
@Nullable
|
||||
public Resources.Theme getTheme(int skinIndex) {
|
||||
SkinItem skinItem = mThemes.get(skinIndex);
|
||||
SkinItem skinItem = mSkins.get(skinIndex);
|
||||
if (skinItem != null) {
|
||||
return skinItem.getTheme();
|
||||
}
|
||||
@@ -158,8 +158,11 @@ public final class QMUISkinManager {
|
||||
|
||||
|
||||
@MainThread
|
||||
public void addTheme(int index, int styleRes) {
|
||||
SkinItem skinItem = mThemes.get(index);
|
||||
public void addSkin(int index, int styleRes) {
|
||||
if(index <= 0){
|
||||
throw new IllegalArgumentException("index must greater than 0");
|
||||
}
|
||||
SkinItem skinItem = mSkins.get(index);
|
||||
if (skinItem != null) {
|
||||
if (skinItem.getStyleRes() == styleRes) {
|
||||
return;
|
||||
@@ -167,7 +170,7 @@ public final class QMUISkinManager {
|
||||
throw new RuntimeException("already exist the theme item for " + index);
|
||||
}
|
||||
skinItem = new SkinItem(styleRes);
|
||||
mThemes.append(index, skinItem);
|
||||
mSkins.append(index, skinItem);
|
||||
}
|
||||
|
||||
|
||||
@@ -178,7 +181,7 @@ public final class QMUISkinManager {
|
||||
if (view == null) {
|
||||
return;
|
||||
}
|
||||
SkinItem skinItem = mThemes.get(skinIndex);
|
||||
SkinItem skinItem = mSkins.get(skinIndex);
|
||||
Resources.Theme theme;
|
||||
if (skinItem == null) {
|
||||
if (skinIndex != DEFAULT_SKIN) {
|
||||
@@ -232,7 +235,13 @@ public final class QMUISkinManager {
|
||||
Map<String, Integer> attrs = getSkinAttrs(view);
|
||||
if (view instanceof IQMUISkinHandlerView) {
|
||||
((IQMUISkinHandlerView) view).handle(this, skinIndex, theme, attrs);
|
||||
} else if (attrs != null) {
|
||||
} else{
|
||||
defaultHandleSkinAttrs(view, theme, attrs);
|
||||
}
|
||||
}
|
||||
|
||||
public void defaultHandleSkinAttrs(@NonNull View view, Resources.Theme theme, Map<String, Integer> attrs){
|
||||
if(attrs != null){
|
||||
for (String key : attrs.keySet()) {
|
||||
Integer attr = attrs.get(key);
|
||||
if (attr == null) {
|
||||
@@ -242,7 +251,6 @@ public final class QMUISkinManager {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void defaultHandleSkinAttr(View view, Resources.Theme theme, String name, int attr) {
|
||||
if (attr == 0) {
|
||||
return;
|
||||
@@ -317,4 +325,5 @@ public final class QMUISkinManager {
|
||||
return theme;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -90,7 +90,7 @@ public class QMUITopBar extends QMUIRelativeLayout implements IQMUISkinHandlerVi
|
||||
private int mTopBarHeight = -1;
|
||||
private Rect mTitleContainerRect;
|
||||
|
||||
private HashMap<String, Integer> mDefaultSkinAttrs = new HashMap<>();
|
||||
private Map<String, Integer> mDefaultSkinAttrs = new HashMap<>();
|
||||
|
||||
public QMUITopBar(Context context) {
|
||||
this(context, null);
|
||||
@@ -112,7 +112,7 @@ public class QMUITopBar extends QMUIRelativeLayout implements IQMUISkinHandlerVi
|
||||
mLeftViewList = new ArrayList<>();
|
||||
mRightViewList = new ArrayList<>();
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BOTTOM_SEPARATOR, R.attr.qmui_topbar_separator_color);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BACKGROUND, R.attr.qmui_topbar_bg_color);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BACKGROUND, R.attr.qmui_topbar_bg);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BTN_TEXT_COLOR, R.attr.qmui_topbar_text_btn_color_state_list);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.TINT_COLOR, R.attr.qmui_topbar_image_tint_color);
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ public class QMUITopBarLayout extends QMUIFrameLayout implements IQMUISkinDefaul
|
||||
public QMUITopBarLayout(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||
super(context, attrs, defStyleAttr);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BOTTOM_SEPARATOR, R.attr.qmui_topbar_separator_color);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BACKGROUND, R.attr.qmui_topbar_bg_color);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BACKGROUND, R.attr.qmui_topbar_bg);
|
||||
mTopBar = new QMUITopBar(context, attrs, defStyleAttr);
|
||||
mTopBar.setBackground(null);
|
||||
mTopBar.updateBottomDivider(0, 0, 0, 0);
|
||||
|
||||
@@ -50,8 +50,8 @@ public class QMUITab {
|
||||
int selectedTextSize;
|
||||
Typeface normalTypeface;
|
||||
Typeface selectedTypeface;
|
||||
int normalColor;
|
||||
int selectedColor;
|
||||
int normalColorAttr;
|
||||
int selectedColorAttr;
|
||||
int normalTabIconWidth = QMUITabIcon.TAB_ICON_INTRINSIC;
|
||||
int normalTabIconHeight = QMUITabIcon.TAB_ICON_INTRINSIC;
|
||||
float selectedTabIconScale = 1f;
|
||||
@@ -128,12 +128,12 @@ public class QMUITab {
|
||||
}
|
||||
|
||||
|
||||
public int getNormalColor() {
|
||||
return normalColor;
|
||||
public int getNormalColorAttr() {
|
||||
return normalColorAttr;
|
||||
}
|
||||
|
||||
public int getSelectedColor() {
|
||||
return selectedColor;
|
||||
public int getSelectedColorAttr() {
|
||||
return selectedColorAttr;
|
||||
}
|
||||
|
||||
public int getNormalTextSize() {
|
||||
|
||||
@@ -20,6 +20,7 @@ import android.graphics.Typeface;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.view.Gravity;
|
||||
|
||||
import com.qmuiteam.qmui.R;
|
||||
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
@@ -53,11 +54,11 @@ public class QMUITabBuilder {
|
||||
/**
|
||||
* text color(icon color in if dynamicChangeIconColor == true) in normal state
|
||||
*/
|
||||
private int normalColor;
|
||||
private int normalColorAttr = R.attr.qmui_tab_normal_color;
|
||||
/**
|
||||
* text color(icon color in if dynamicChangeIconColor == true) in selected state
|
||||
*/
|
||||
private int selectedColor;
|
||||
private int selectedColorAttr = R.attr.qmui_tab_selected_color;
|
||||
/**
|
||||
* icon position(left/top/right/bottom)
|
||||
*/
|
||||
@@ -137,8 +138,8 @@ public class QMUITabBuilder {
|
||||
this.dynamicChangeIconColor = other.dynamicChangeIconColor;
|
||||
this.normalTextSize = other.normalTextSize;
|
||||
this.selectTextSize = other.selectTextSize;
|
||||
this.normalColor = other.normalColor;
|
||||
this.selectedColor = other.selectedColor;
|
||||
this.normalColorAttr = other.normalColorAttr;
|
||||
this.selectedColorAttr = other.selectedColorAttr;
|
||||
this.iconPosition = other.iconPosition;
|
||||
this.gravity = other.gravity;
|
||||
this.text = other.text;
|
||||
@@ -211,9 +212,9 @@ public class QMUITabBuilder {
|
||||
return this;
|
||||
}
|
||||
|
||||
public QMUITabBuilder setColor(int normalColor, int selectedColor) {
|
||||
this.normalColor = normalColor;
|
||||
this.selectedColor = selectedColor;
|
||||
public QMUITabBuilder setColorAttr(int normalColorAttr, int selectedColorAttr) {
|
||||
this.normalColorAttr = normalColorAttr;
|
||||
this.selectedColorAttr = selectedColorAttr;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -256,8 +257,8 @@ public class QMUITabBuilder {
|
||||
tab.selectedTextSize = this.selectTextSize;
|
||||
tab.normalTypeface = this.normalTypeface;
|
||||
tab.selectedTypeface = this.selectedTypeface;
|
||||
tab.normalColor = this.normalColor;
|
||||
tab.selectedColor = this.selectedColor;
|
||||
tab.normalColorAttr = this.normalColorAttr;
|
||||
tab.selectedColorAttr = this.selectedColorAttr;
|
||||
tab.signCount = this.signCount;
|
||||
tab.signCountDigits = this.signCountDigits;
|
||||
tab.signCountLeftMarginWithIconOrText = this.signCountLeftMarginWithIconOrText;
|
||||
|
||||
@@ -35,7 +35,10 @@ public class QMUITabIcon extends Drawable {
|
||||
private final @Nullable Drawable mSelectedIconDrawable;
|
||||
|
||||
public QMUITabIcon(@NonNull Drawable normalIconDrawable, @Nullable Drawable selectedIconDrawable) {
|
||||
mNormalIconDrawable = normalIconDrawable;
|
||||
mNormalIconDrawable = normalIconDrawable.mutate();
|
||||
if(selectedIconDrawable != null){
|
||||
selectedIconDrawable = selectedIconDrawable.mutate();
|
||||
}
|
||||
mSelectedIconDrawable = selectedIconDrawable;
|
||||
mNormalIconDrawable.setAlpha(255);
|
||||
int nw = mNormalIconDrawable.getIntrinsicWidth();
|
||||
|
||||
@@ -19,6 +19,7 @@ package com.qmuiteam.qmui.widget.tab;
|
||||
import android.animation.Animator;
|
||||
import android.animation.ValueAnimator;
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.content.res.TypedArray;
|
||||
import android.database.DataSetObserver;
|
||||
import android.graphics.Canvas;
|
||||
@@ -33,6 +34,11 @@ import com.qmuiteam.qmui.QMUIInterpolatorStaticHolder;
|
||||
import com.qmuiteam.qmui.R;
|
||||
import com.qmuiteam.qmui.layout.IQMUILayout;
|
||||
import com.qmuiteam.qmui.layout.QMUILayoutHelper;
|
||||
import com.qmuiteam.qmui.skin.IQMUISkinHandlerView;
|
||||
import com.qmuiteam.qmui.skin.QMUISkinHelper;
|
||||
import com.qmuiteam.qmui.skin.QMUISkinManager;
|
||||
import com.qmuiteam.qmui.skin.QMUISkinValueBuilder;
|
||||
import com.qmuiteam.qmui.skin.defaultAttr.IQMUISkinDefaultAttrProvider;
|
||||
import com.qmuiteam.qmui.util.QMUIColorHelper;
|
||||
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
|
||||
import com.qmuiteam.qmui.util.QMUIResHelper;
|
||||
@@ -41,7 +47,9 @@ import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import androidx.annotation.ColorInt;
|
||||
import androidx.annotation.IntDef;
|
||||
@@ -100,7 +108,7 @@ import androidx.viewpager.widget.ViewPager;
|
||||
* @author cginechen
|
||||
* @date 2016-01-27
|
||||
*/
|
||||
public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout {
|
||||
public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout, IQMUISkinHandlerView, IQMUISkinDefaultAttrProvider {
|
||||
|
||||
private static final String TAG = "QMUITabSegment";
|
||||
|
||||
@@ -147,6 +155,7 @@ public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout
|
||||
private AdapterChangeListener mAdapterChangeListener;
|
||||
private boolean mIsInSelectTab = false;
|
||||
private QMUILayoutHelper mLayoutHelper;
|
||||
private Map<String, Integer> mDefaultSkinAttrs = new HashMap<>();
|
||||
|
||||
public QMUITabSegment(Context context) {
|
||||
this(context, null);
|
||||
@@ -183,10 +192,6 @@ public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout
|
||||
indicatorTop, indicatorWidthFollowContent);
|
||||
|
||||
// tabBuilder
|
||||
int normalTextColor = array.getColor(R.styleable.QMUITabSegment_qmui_tab_normal_color,
|
||||
ContextCompat.getColor(context, R.color.qmui_config_color_gray_5));
|
||||
int selectedTextColor = array.getColor(R.styleable.QMUITabSegment_qmui_tab_selected_color,
|
||||
QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_blue));
|
||||
int normalTextSize = array.getDimensionPixelSize(
|
||||
R.styleable.QMUITabSegment_android_textSize,
|
||||
getResources().getDimensionPixelSize(R.dimen.qmui_tab_segment_text_size));
|
||||
@@ -196,7 +201,6 @@ public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout
|
||||
selectedTextSize = array.getDimensionPixelSize(
|
||||
R.styleable.QMUITabSegment_qmui_tab_selected_text_size, selectedTextSize);
|
||||
mTabBuilder = new QMUITabBuilder(context)
|
||||
.setColor(normalTextColor, selectedTextColor)
|
||||
.setTextSize(normalTextSize, selectedTextSize)
|
||||
.setIconPosition(array.getInt(R.styleable.QMUITabSegment_qmui_tab_icon_position,
|
||||
QMUITab.ICON_POSITION_LEFT));
|
||||
@@ -210,6 +214,10 @@ public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout
|
||||
addView(mContentLayout, new FrameLayout.LayoutParams(
|
||||
ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.MATCH_PARENT));
|
||||
mTabAdapter = createTabAdapter(mContentLayout);
|
||||
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BOTTOM_SEPARATOR, R.attr.qmui_tab_separator_color);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.TOP_SEPARATOR, R.attr.qmui_tab_separator_color);
|
||||
mDefaultSkinAttrs.put(QMUISkinValueBuilder.BACKGROUND, R.attr.qmui_tab_bg);
|
||||
}
|
||||
|
||||
protected QMUITabAdapter createTabAdapter(ViewGroup tabParentView) {
|
||||
@@ -564,7 +572,7 @@ public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout
|
||||
if (model == null || mIndicator == null) {
|
||||
return;
|
||||
}
|
||||
mIndicator.updateInfo(model.contentLeft, model.contentWidth, model.selectedColor);
|
||||
mIndicator.updateInfo(model.contentLeft, model.contentWidth, QMUISkinHelper.getSkinColor(this, model.selectedColorAttr));
|
||||
if (invalidate) {
|
||||
mContentLayout.invalidate();
|
||||
}
|
||||
@@ -579,7 +587,9 @@ public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout
|
||||
final int targetLeft = (int) (preModel.contentLeft + leftDistance * offsetPercent);
|
||||
final int targetWidth = (int) (preModel.contentWidth + widthDistance * offsetPercent);
|
||||
int indicatorColor = QMUIColorHelper.computeColor(
|
||||
preModel.selectedColor, targetModel.selectedColor, offsetPercent);
|
||||
QMUISkinHelper.getSkinColor(this, preModel.selectedColorAttr),
|
||||
QMUISkinHelper.getSkinColor(this, targetModel.selectedColorAttr),
|
||||
offsetPercent);
|
||||
mIndicator.updateInfo(targetLeft, targetWidth, indicatorColor);
|
||||
mContentLayout.invalidate();
|
||||
}
|
||||
@@ -1307,4 +1317,15 @@ public class QMUITabSegment extends HorizontalScrollView implements IQMUILayout
|
||||
mLayoutHelper.dispatchRoundBorderDraw(canvas);
|
||||
super.onDraw(canvas);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Integer> getDefaultSkinAttrs() {
|
||||
return mDefaultSkinAttrs;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handle(QMUISkinManager manager, int skinIndex, Resources.Theme theme, Map<String, Integer> attrs) {
|
||||
layoutIndicator(mTabAdapter.getItem(mCurrentSelectedIndex), true);
|
||||
manager.defaultHandleSkinAttrs(this, theme, attrs);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ package com.qmuiteam.qmui.widget.tab;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.ColorStateList;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.Point;
|
||||
import android.view.GestureDetector;
|
||||
@@ -30,18 +31,23 @@ import android.widget.FrameLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.qmuiteam.qmui.R;
|
||||
import com.qmuiteam.qmui.skin.IQMUISkinHandlerView;
|
||||
import com.qmuiteam.qmui.skin.QMUISkinHelper;
|
||||
import com.qmuiteam.qmui.skin.QMUISkinManager;
|
||||
import com.qmuiteam.qmui.util.QMUICollapsingTextHelper;
|
||||
import com.qmuiteam.qmui.util.QMUIColorHelper;
|
||||
import com.qmuiteam.qmui.util.QMUILangHelper;
|
||||
import com.qmuiteam.qmui.util.QMUIResHelper;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.view.GravityCompat;
|
||||
import androidx.core.view.ViewCompat;
|
||||
|
||||
// todo custom view
|
||||
// todo gravity
|
||||
public class QMUITabView extends FrameLayout {
|
||||
public class QMUITabView extends FrameLayout implements IQMUISkinHandlerView {
|
||||
|
||||
private QMUITab mTab;
|
||||
private QMUICollapsingTextHelper mCollapsingTextHelper;
|
||||
@@ -122,8 +128,10 @@ public class QMUITabView extends FrameLayout {
|
||||
|
||||
public void bind(QMUITab tab) {
|
||||
mCollapsingTextHelper.setTextSize(tab.normalTextSize, tab.selectedTextSize, false);
|
||||
mCollapsingTextHelper.setTextColor(ColorStateList.valueOf(tab.normalColor),
|
||||
ColorStateList.valueOf(tab.selectedColor), false);
|
||||
mCollapsingTextHelper.setTextColor(
|
||||
ColorStateList.valueOf(QMUISkinHelper.getSkinColor(this, tab.normalColorAttr)),
|
||||
ColorStateList.valueOf(QMUISkinHelper.getSkinColor(this, tab.selectedColorAttr)),
|
||||
false);
|
||||
mCollapsingTextHelper.setTypeface(tab.normalTypeface, tab.selectedTypeface, false);
|
||||
int gravity = Gravity.LEFT | Gravity.TOP;
|
||||
mCollapsingTextHelper.setGravity(gravity, gravity, false);
|
||||
@@ -165,7 +173,9 @@ public class QMUITabView extends FrameLayout {
|
||||
QMUITabIcon tabIcon = mTab.getTabIcon();
|
||||
if (tabIcon != null) {
|
||||
tabIcon.setSelectFraction(fraction,
|
||||
QMUIColorHelper.computeColor(mTab.normalColor, mTab.selectedColor, fraction));
|
||||
QMUIColorHelper.computeColor(
|
||||
QMUISkinHelper.getSkinColor(this, mTab.normalColorAttr),
|
||||
QMUISkinHelper.getSkinColor(this, mTab.selectedColorAttr), fraction));
|
||||
}
|
||||
updateCurrentInfo(fraction);
|
||||
mCollapsingTextHelper.setExpansionFraction(1 - fraction);
|
||||
@@ -648,6 +658,17 @@ public class QMUITabView extends FrameLayout {
|
||||
canvas.restore();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handle(QMUISkinManager manager, int skinIndex, Resources.Theme theme, Map<String, Integer> attrs) {
|
||||
if(mTab != null){
|
||||
mCollapsingTextHelper.setTextColor(
|
||||
ColorStateList.valueOf(QMUISkinHelper.getSkinColor(this, mTab.normalColorAttr)),
|
||||
ColorStateList.valueOf(QMUISkinHelper.getSkinColor(this, mTab.selectedColorAttr)),
|
||||
true);
|
||||
invalidate();
|
||||
}
|
||||
}
|
||||
|
||||
public interface Callback {
|
||||
void onClick(QMUITabView view);
|
||||
|
||||
|
||||
@@ -79,8 +79,6 @@
|
||||
<attr name="android:textSize"/>
|
||||
<attr name="qmui_tab_normal_text_size" format="dimension"/>
|
||||
<attr name="qmui_tab_selected_text_size" format="dimension"/>
|
||||
<attr name="qmui_tab_normal_color" format="color|reference"/>
|
||||
<attr name="qmui_tab_selected_color" format="color|reference"/>
|
||||
<attr name="qmui_tab_mode" format="enum">
|
||||
<enum name="scrollable" value="0"/>
|
||||
<enum name="fixed" value="1"/>
|
||||
|
||||
@@ -172,7 +172,7 @@
|
||||
***********************************************-->
|
||||
<attr name="qmui_topbar_height" format="dimension" />
|
||||
<attr name="qmui_topbar_separator_color" format="color"/>
|
||||
<attr name="qmui_topbar_bg_color" format="color"/>
|
||||
<attr name="qmui_topbar_bg" format="reference"/>
|
||||
<attr name="qmui_topbar_title_color" format="color"/>
|
||||
<attr name="qmui_topbar_subtitle_color" format="color"/>
|
||||
<attr name="qmui_topbar_text_btn_color_state_list" format="reference"/>
|
||||
@@ -208,6 +208,11 @@
|
||||
<!--**********************************************
|
||||
* qmui tabSegment *
|
||||
***********************************************-->
|
||||
<attr name="qmui_tab_bg" format="reference"/>
|
||||
<attr name="qmui_tab_separator_color" format="color"/>
|
||||
<attr name="qmui_tab_normal_color" format="color|reference"/>
|
||||
<attr name="qmui_tab_selected_color" format="color|reference"/>
|
||||
|
||||
<attr name="qmui_tab_sign_count_view" format="reference" />
|
||||
<attr name="qmui_tab_sign_count_view_minSize" format="dimension" />
|
||||
<attr name="qmui_tab_sign_count_view_minSize_with_text" format="dimension" />
|
||||
|
||||
@@ -85,7 +85,7 @@
|
||||
|
||||
<!--********************* TopBar *********************-->
|
||||
<style name="QMUI.TopBar">
|
||||
<item name="android:background">?attr/qmui_topbar_bg_color</item>
|
||||
<item name="android:background">?attr/qmui_topbar_bg</item>
|
||||
<item name="qmui_bottomDividerHeight">1px</item>
|
||||
<item name="qmui_bottomDividerColor">?attr/qmui_topbar_separator_color</item>
|
||||
<item name="qmui_topbar_left_back_drawable_id">@drawable/qmui_icon_topbar_back</item>
|
||||
|
||||
@@ -75,6 +75,43 @@
|
||||
</style>
|
||||
|
||||
<style name="QMUI" parent="AppConfigTheme">
|
||||
<!--***************************** qmui topbar ***************************** -->
|
||||
<item name="qmui_topbar_height">56dp</item>
|
||||
<!-- skin support-->
|
||||
<item name="qmui_topbar_separator_color">?attr/qmui_config_color_separator</item>
|
||||
<item name="qmui_topbar_bg">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_topbar_title_color">@color/qmui_config_color_gray_1</item>
|
||||
<item name="qmui_topbar_subtitle_color">?attr/qmui_config_color_gray_3</item>
|
||||
<item name="qmui_topbar_text_btn_color_state_list">@color/qmui_config_color_gray_1</item>
|
||||
<item name="qmui_topbar_image_tint_color">@color/qmui_config_color_gray_1</item>
|
||||
<!-- skin support-->
|
||||
|
||||
<!--*************************** qmui tabSegment *************************** -->
|
||||
|
||||
<!-- skin support-->
|
||||
<item name="qmui_tab_bg">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_tab_separator_color">?attr/qmui_config_color_separator</item>
|
||||
<item name="qmui_tab_normal_color">?attr/qmui_config_color_gray_6</item>
|
||||
<item name="qmui_tab_selected_color">?attr/qmui_config_color_blue</item>
|
||||
<!-- skin support-->
|
||||
|
||||
|
||||
<item name="qmui_tab_sign_count_view">@style/qmui_tab_sign_count_view</item>
|
||||
<item name="qmui_tab_sign_count_view_minSize">@dimen/qmui_tab_sign_count_view_minSize</item>
|
||||
<item name="qmui_tab_sign_count_view_minSize_with_text">
|
||||
@dimen/qmui_tab_sign_count_view_minSize_with_text
|
||||
</item>
|
||||
<item name="qmui_tab_sign_count_view_bg">@drawable/qmui_sign_count_view_bg</item>
|
||||
<item name="qmui_tab_sign_count_view_padding_horizontal">4dp</item>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<item name="qmui_content_padding_horizontal">@dimen/qmui_content_padding_horizontal
|
||||
</item> <!-- 已废弃 -->
|
||||
<item name="qmui_content_spacing_horizontal">@dimen/qmui_content_spacing_horizontal</item>
|
||||
@@ -224,18 +261,7 @@
|
||||
<item name="qmui_round_btn_border_color">@color/qmui_btn_blue_border</item>
|
||||
<item name="qmui_round_btn_text_color">@color/qmui_btn_blue_text</item>
|
||||
|
||||
<!--**********************************************
|
||||
* qmui topbar *
|
||||
***********************************************-->
|
||||
<item name="qmui_topbar_height">56dp</item>
|
||||
<!-- skin support-->
|
||||
<item name="qmui_topbar_separator_color">?attr/qmui_config_color_separator</item>
|
||||
<item name="qmui_topbar_bg_color">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_topbar_title_color">@color/qmui_config_color_gray_1</item>
|
||||
<item name="qmui_topbar_subtitle_color">?attr/qmui_config_color_gray_3</item>
|
||||
<item name="qmui_topbar_text_btn_color_state_list">@color/qmui_config_color_gray_1</item>
|
||||
<item name="qmui_topbar_image_tint_color">@color/qmui_config_color_gray_1</item>
|
||||
<!-- skin support-->
|
||||
|
||||
|
||||
<!--**********************************************
|
||||
* qmui bottom sheet *
|
||||
@@ -311,16 +337,7 @@
|
||||
<item name="qmui_popup_arrow_up_margin_top">13dp</item>
|
||||
<item name="qmui_popup_arrow_down_margin_bottom">13dp</item>
|
||||
|
||||
<!--**********************************************
|
||||
* qmui tabSegment *
|
||||
***********************************************-->
|
||||
<item name="qmui_tab_sign_count_view">@style/qmui_tab_sign_count_view</item>
|
||||
<item name="qmui_tab_sign_count_view_minSize">@dimen/qmui_tab_sign_count_view_minSize</item>
|
||||
<item name="qmui_tab_sign_count_view_minSize_with_text">
|
||||
@dimen/qmui_tab_sign_count_view_minSize_with_text
|
||||
</item>
|
||||
<item name="qmui_tab_sign_count_view_bg">@drawable/qmui_sign_count_view_bg</item>
|
||||
<item name="qmui_tab_sign_count_view_padding_horizontal">4dp</item>
|
||||
|
||||
|
||||
<!--**********************************************
|
||||
* qmui 提供的控件样式 *
|
||||
|
||||
+6
-12
@@ -226,15 +226,13 @@ public class QDTabSegmentFixModeFragment extends BaseFragment {
|
||||
.setNormalDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_component))
|
||||
.setSelectedDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_component_selected))
|
||||
.setText("Components")
|
||||
.setColor(QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_gray_1),
|
||||
QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_blue))
|
||||
.setColorAttr(R.attr.qmui_config_color_gray_1, R.attr.qmui_config_color_blue)
|
||||
.build();
|
||||
QMUITab util = tabBuilder
|
||||
.setNormalDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_util))
|
||||
.setSelectedDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_util_selected))
|
||||
.setText("Helper")
|
||||
.setColor(QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_gray_1),
|
||||
QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_red))
|
||||
.setColorAttr(R.attr.qmui_config_color_gray_1, R.attr.qmui_config_color_red)
|
||||
.build();
|
||||
mTabSegment.addTab(component);
|
||||
mTabSegment.addTab(util);
|
||||
@@ -264,15 +262,13 @@ public class QDTabSegmentFixModeFragment extends BaseFragment {
|
||||
.setNormalDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_component))
|
||||
.setSelectedDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_component_selected))
|
||||
.setText("Components")
|
||||
.setColor(QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_blue),
|
||||
QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_red))
|
||||
.setColorAttr(R.attr.qmui_config_color_blue, R.attr.qmui_config_color_red)
|
||||
.build();
|
||||
QMUITab util = tabBuilder
|
||||
.setNormalDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_util))
|
||||
.setSelectedDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_util_selected))
|
||||
.setText("Helper")
|
||||
.setColor(QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_gray_1),
|
||||
QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_red))
|
||||
.setColorAttr(R.attr.qmui_config_color_gray_1, R.attr.qmui_config_color_red)
|
||||
.build();
|
||||
mTabSegment.addTab(component);
|
||||
mTabSegment.addTab(util);
|
||||
@@ -292,15 +288,13 @@ public class QDTabSegmentFixModeFragment extends BaseFragment {
|
||||
.setNormalDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_component))
|
||||
.setSelectedDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_component_selected))
|
||||
.setText("Components")
|
||||
.setColor(QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_blue),
|
||||
QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_red))
|
||||
.setColorAttr(R.attr.qmui_config_color_blue, R.attr.qmui_config_color_red)
|
||||
.build();
|
||||
QMUITab util = tabBuilder
|
||||
.setNormalDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_util))
|
||||
.setSelectedDrawable(ContextCompat.getDrawable(context, R.mipmap.icon_tabbar_util_selected))
|
||||
.setText("Helper")
|
||||
.setColor(QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_gray_1),
|
||||
QMUIResHelper.getAttrColor(context, R.attr.qmui_config_color_red))
|
||||
.setColorAttr(R.attr.qmui_config_color_gray_1, R.attr.qmui_config_color_red)
|
||||
.build();
|
||||
mTabSegment.addTab(component);
|
||||
mTabSegment.addTab(util);
|
||||
|
||||
@@ -22,7 +22,6 @@ import android.view.ViewGroup;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
|
||||
import com.qmuiteam.qmui.util.QMUIResHelper;
|
||||
import com.qmuiteam.qmui.widget.tab.QMUITab;
|
||||
import com.qmuiteam.qmui.widget.tab.QMUITabBuilder;
|
||||
import com.qmuiteam.qmui.widget.tab.QMUITabSegment;
|
||||
@@ -101,11 +100,9 @@ public class HomeFragment extends BaseFragment {
|
||||
}
|
||||
|
||||
private void initTabs() {
|
||||
int normalColor = QMUIResHelper.getAttrColor(getContext(), R.attr.qmui_config_color_gray_6);
|
||||
int selectColor = QMUIResHelper.getAttrColor(getContext(), R.attr.qmui_config_color_blue);
|
||||
|
||||
QMUITabBuilder builder = mTabSegment.tabBuilder();
|
||||
builder.setColor(normalColor, selectColor)
|
||||
.setSelectedIconScale(1.6f)
|
||||
builder.setSelectedIconScale(1.2f)
|
||||
.setTextSize(QMUIDisplayHelper.sp2px(getContext(), 13), QMUIDisplayHelper.sp2px(getContext(), 15))
|
||||
.setDynamicChangeIconColor(false);
|
||||
QMUITab component = builder
|
||||
|
||||
+1
-3
@@ -110,10 +110,8 @@ public class QDNotchHelperFragment extends BaseFragment {
|
||||
}
|
||||
|
||||
private void initTabs() {
|
||||
int normalColor = QMUIResHelper.getAttrColor(getContext(), R.attr.qmui_config_color_gray_6);
|
||||
int selectColor = QMUIResHelper.getAttrColor(getContext(), R.attr.qmui_config_color_blue);
|
||||
QMUITabBuilder builder = mTabSegment.tabBuilder();
|
||||
builder.setColor(normalColor, selectColor)
|
||||
builder.setColorAttr(R.attr.qmui_config_color_gray_6, R.attr.qmui_config_color_blue)
|
||||
.setSelectedIconScale(2f)
|
||||
.setTextSize(QMUIDisplayHelper.sp2px(getContext(), 14), QMUIDisplayHelper.sp2px(getContext(), 16))
|
||||
.setDynamicChangeIconColor(false);
|
||||
|
||||
@@ -37,9 +37,9 @@ public class QDSkinManager {
|
||||
|
||||
public static void install(Context context) {
|
||||
QMUISkinManager skinManager = QMUISkinManager.getInstance(context);
|
||||
skinManager.addTheme(SKIN_BLUE, R.style.app_skin_blue);
|
||||
skinManager.addTheme(SKIN_DARK, R.style.app_skin_dark);
|
||||
skinManager.addTheme(SKIN_WHITE, R.style.app_skin_white);
|
||||
skinManager.addSkin(SKIN_BLUE, R.style.app_skin_blue);
|
||||
skinManager.addSkin(SKIN_DARK, R.style.app_skin_dark);
|
||||
skinManager.addSkin(SKIN_WHITE, R.style.app_skin_white);
|
||||
}
|
||||
|
||||
public static void changeSkin(int index) {
|
||||
|
||||
@@ -33,8 +33,6 @@
|
||||
android:background="?attr/qmui_list_item_bg_with_border_top"
|
||||
android:textSize="12sp"
|
||||
app:qmui_tab_icon_position="top"
|
||||
app:qmui_tab_normal_color="?attr/qmui_config_color_gray_6"
|
||||
app:qmui_tab_selected_color="?attr/qmui_config_color_blue"
|
||||
app:qmui_tab_selected_text_size="16sp"
|
||||
app:qmui_tab_normal_text_size="14sp"
|
||||
android:layout_width="match_parent"
|
||||
|
||||
@@ -38,7 +38,5 @@
|
||||
android:textSize="12sp"
|
||||
app:qmui_topDividerHeight="1px"
|
||||
app:qmui_topDividerColor="?attr/qmui_config_color_separator"
|
||||
app:qmui_tab_icon_position="top"
|
||||
app:qmui_skin_background="?attr/app_skin_tab_bar_bg_color"
|
||||
app:qmui_skin_separator_top="?attr/qmui_config_color_separator"/>
|
||||
app:qmui_tab_icon_position="top"/>
|
||||
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
|
||||
@@ -39,10 +39,8 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="40dp"
|
||||
android:background="@color/qmui_config_color_white"
|
||||
app:qmui_topDividerHeight="10px"
|
||||
app:qmui_topDividerColor="?attr/qmui_config_color_separator"
|
||||
app:qmui_skin_background="?attr/app_skin_tab_bar_bg_color"
|
||||
app:qmui_skin_separator_top="?attr/qmui_config_color_separator" />
|
||||
app:qmui_topDividerHeight="1px"
|
||||
app:qmui_topDividerColor="?attr/qmui_config_color_separator"/>
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
|
||||
@@ -1,67 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!--
|
||||
Tencent is pleased to support the open source community by making QMUI_Android available.
|
||||
|
||||
Copyright (C) 2017-2018 THL A29 Limited, a Tencent company. All rights reserved.
|
||||
|
||||
Licensed under the MIT License (the "License"); you may not use this file except in
|
||||
compliance with the License. You may obtain a copy of the License at
|
||||
|
||||
http://opensource.org/licenses/MIT
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software distributed under the License is
|
||||
distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
|
||||
either express or implied. See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<resources>
|
||||
|
||||
<!-- skin attr define-->
|
||||
<attr name="app_skin_primary_bg" format="color|reference"/>
|
||||
<attr name="app_skin_common_background" format="color|reference" />
|
||||
<attr name="app_skin_s_list_item_bg" format="color|reference" />
|
||||
<attr name="app_skin_common_img_tint_color" format="color|reference"/>
|
||||
<attr name="app_skin_home_text_color" format="color|reference"/>
|
||||
<attr name="app_skin_tab_bar_bg_color" format="color|reference"/>
|
||||
|
||||
<style name="app_skin_base" parent="AppTheme">
|
||||
<item name="app_skin_common_background">@color/qmui_config_color_white</item>
|
||||
<item name="app_skin_s_list_item_bg">?attr/qmui_s_list_item_bg_with_border_none</item>
|
||||
<item name="app_skin_common_img_tint_color">?attr/qmui_config_color_blue</item>
|
||||
<item name="app_skin_home_text_color">?attr/qmui_config_color_gray_6</item>
|
||||
<item name="app_skin_primary_bg">?attr/qmui_config_color_blue</item>
|
||||
<item name="app_skin_tab_bar_bg_color">@color/qmui_config_color_white</item>
|
||||
|
||||
|
||||
<item name="qmui_topbar_bg_color">?attr/app_skin_primary_bg</item>
|
||||
</style>
|
||||
|
||||
<!-- blue skin -->
|
||||
<style name="app_skin_blue" parent="app_skin_base">
|
||||
|
||||
</style>
|
||||
|
||||
|
||||
<!-- dark skin -->
|
||||
<style name="app_skin_dark" parent="app_skin_base">
|
||||
<item name="qmui_config_color_separator">@color/qmui_config_color_50_white</item>
|
||||
|
||||
|
||||
<item name="app_skin_primary_bg">@color/qmui_config_color_pure_black</item>
|
||||
<item name="app_skin_common_background">@color/qmui_config_color_gray_1</item>
|
||||
<item name="app_skin_tab_bar_bg_color">@color/qmui_config_color_pure_black</item>
|
||||
<item name="app_skin_s_list_item_bg">@drawable/list_item_bg_with_border_none_dark</item>
|
||||
<item name="app_skin_common_img_tint_color">@color/qmui_config_color_white</item>
|
||||
<item name="app_skin_home_text_color">?attr/qmui_config_color_gray_8</item>
|
||||
</style>
|
||||
|
||||
<!-- white skin -->
|
||||
<style name="app_skin_white" parent="app_skin_base">
|
||||
<item name="qmui_topbar_title_color">@color/qmui_config_color_pure_black</item>
|
||||
<item name="qmui_topbar_subtitle_color">@color/qmui_config_color_gray_3</item>
|
||||
<item name="qmui_topbar_text_btn_color_state_list">@color/qmui_config_color_pure_black</item>
|
||||
<item name="qmui_topbar_image_tint_color">@color/qmui_config_color_pure_black</item>
|
||||
|
||||
<item name="app_skin_primary_bg">@color/qmui_config_color_white</item>
|
||||
<item name="app_skin_common_img_tint_color">@color/qmui_config_color_pure_black</item>
|
||||
</style>
|
||||
</resources>
|
||||
@@ -15,36 +15,6 @@
|
||||
-->
|
||||
|
||||
<resources xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<style name="AppTheme" parent="QMUI.Compat.NoActionBar">
|
||||
<!-- 配置Android提供的theme -->
|
||||
<item name="android:textAppearanceListItemSmall">@style/QDTextAppearanceListItemSmall</item>
|
||||
<item name="android:textAppearanceListItem">@style/QDtextAppearanceListItem</item>
|
||||
<item name="android:listPreferredItemHeight">?attr/qmui_list_item_height_higher</item>
|
||||
<item name="android:listPreferredItemHeightSmall">?attr/qmui_list_item_height</item>
|
||||
|
||||
<!-- 配置qmui提供的theme -->
|
||||
<item name="qmui_config_color_blue">@color/app_color_blue</item>
|
||||
<item name="qmui_round_btn_bg_color">@color/s_btn_blue_bg</item>
|
||||
<item name="qmui_round_btn_border_color">@color/s_btn_blue_border</item>
|
||||
<item name="qmui_round_btn_text_color">@color/s_btn_blue_text</item>
|
||||
<item name="qmui_content_spacing_horizontal">20dp</item>
|
||||
<item name="qmui_content_padding_horizontal">@dimen/qmui_content_spacing_horizontal</item>
|
||||
|
||||
<item name="qmui_topbar_bg_color">?attr/app_primary_color</item>
|
||||
<item name="qmui_topbar_separator_color">?attr/qmui_config_color_separator</item>
|
||||
<item name="qmui_topbar_title_color">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_topbar_subtitle_color">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_topbar_text_btn_color_state_list">@color/s_topbar_btn_color</item>
|
||||
<item name="qmui_topbar_image_tint_color">@color/qmui_config_color_white</item>
|
||||
<item name="QMUITopBarStyle">@style/QDTopBar</item>
|
||||
|
||||
<!-- 配置app自己的theme -->
|
||||
<item name="app_primary_color">?attr/qmui_config_color_blue</item>
|
||||
<item name="app_content_bg_color">@color/qmui_config_color_white</item>
|
||||
|
||||
</style>
|
||||
|
||||
<style name="QDtextAppearanceListItem">
|
||||
<item name="android:textColor">?attr/qmui_config_color_black</item>
|
||||
<item name="android:textSize">18sp</item>
|
||||
|
||||
@@ -0,0 +1,94 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!--
|
||||
Tencent is pleased to support the open source community by making QMUI_Android available.
|
||||
|
||||
Copyright (C) 2017-2018 THL A29 Limited, a Tencent company. All rights reserved.
|
||||
|
||||
Licensed under the MIT License (the "License"); you may not use this file except in
|
||||
compliance with the License. You may obtain a copy of the License at
|
||||
|
||||
http://opensource.org/licenses/MIT
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software distributed under the License is
|
||||
distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
|
||||
either express or implied. See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<resources>
|
||||
<!-- skin attr define-->
|
||||
<attr name="app_skin_common_background" format="color|reference" />
|
||||
<attr name="app_skin_s_list_item_bg" format="color|reference" />
|
||||
<attr name="app_skin_common_img_tint_color" format="color|reference"/>
|
||||
<attr name="app_skin_home_text_color" format="color|reference"/>
|
||||
|
||||
<style name="AppTheme" parent="QMUI.Compat.NoActionBar">
|
||||
<!-- 配置Android提供的theme -->
|
||||
<item name="android:textAppearanceListItemSmall">@style/QDTextAppearanceListItemSmall</item>
|
||||
<item name="android:textAppearanceListItem">@style/QDtextAppearanceListItem</item>
|
||||
<item name="android:listPreferredItemHeight">?attr/qmui_list_item_height_higher</item>
|
||||
<item name="android:listPreferredItemHeightSmall">?attr/qmui_list_item_height</item>
|
||||
|
||||
<!-- 配置qmui提供的theme -->
|
||||
<item name="qmui_config_color_blue">@color/app_color_blue</item>
|
||||
<item name="qmui_round_btn_bg_color">@color/s_btn_blue_bg</item>
|
||||
<item name="qmui_round_btn_border_color">@color/s_btn_blue_border</item>
|
||||
<item name="qmui_round_btn_text_color">@color/s_btn_blue_text</item>
|
||||
<item name="qmui_content_spacing_horizontal">20dp</item>
|
||||
<item name="qmui_content_padding_horizontal">@dimen/qmui_content_spacing_horizontal</item>
|
||||
|
||||
<item name="qmui_topbar_bg">?attr/app_primary_color</item>
|
||||
<item name="qmui_topbar_separator_color">?attr/qmui_config_color_separator</item>
|
||||
<item name="qmui_topbar_title_color">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_topbar_subtitle_color">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_topbar_text_btn_color_state_list">@color/s_topbar_btn_color</item>
|
||||
<item name="qmui_topbar_image_tint_color">@color/qmui_config_color_white</item>
|
||||
<item name="QMUITopBarStyle">@style/QDTopBar</item>
|
||||
|
||||
<item name="qmui_tab_bg">@color/qmui_config_color_white</item>
|
||||
<item name="qmui_tab_separator_color">?attr/qmui_config_color_separator</item>
|
||||
<item name="qmui_tab_normal_color">?attr/qmui_config_color_gray_6</item>
|
||||
<item name="qmui_tab_selected_color">?attr/qmui_config_color_blue</item>
|
||||
|
||||
<!-- 配置app自己的theme -->
|
||||
<item name="app_primary_color">?attr/qmui_config_color_blue</item>
|
||||
<item name="app_content_bg_color">@color/qmui_config_color_white</item>
|
||||
|
||||
<item name="app_skin_common_background">@color/qmui_config_color_white</item>
|
||||
<item name="app_skin_s_list_item_bg">?attr/qmui_s_list_item_bg_with_border_none</item>
|
||||
<item name="app_skin_common_img_tint_color">?attr/qmui_config_color_blue</item>
|
||||
<item name="app_skin_home_text_color">?attr/qmui_config_color_gray_6</item>
|
||||
|
||||
</style>
|
||||
|
||||
|
||||
<!-- blue skin -->
|
||||
<style name="app_skin_blue" parent="AppTheme"/>
|
||||
|
||||
|
||||
<!-- dark skin -->
|
||||
<style name="app_skin_dark" parent="AppTheme">
|
||||
<item name="qmui_config_color_separator">@color/qmui_config_color_50_white</item>
|
||||
<item name="qmui_tab_bg">@color/qmui_config_color_pure_black</item>
|
||||
<item name="qmui_tab_normal_color">?attr/qmui_config_color_gray_3</item>
|
||||
<item name="qmui_tab_selected_color">@color/qmui_config_color_white</item>
|
||||
|
||||
<item name="app_primary_color">@color/qmui_config_color_pure_black</item>
|
||||
<item name="app_skin_common_background">@color/qmui_config_color_gray_1</item>
|
||||
<item name="app_skin_s_list_item_bg">@drawable/list_item_bg_with_border_none_dark</item>
|
||||
<item name="app_skin_common_img_tint_color">@color/qmui_config_color_white</item>
|
||||
<item name="app_skin_home_text_color">?attr/qmui_config_color_gray_8</item>
|
||||
</style>
|
||||
|
||||
<!-- white skin -->
|
||||
<style name="app_skin_white" parent="AppTheme">
|
||||
<item name="qmui_topbar_title_color">@color/qmui_config_color_pure_black</item>
|
||||
<item name="qmui_topbar_subtitle_color">@color/qmui_config_color_gray_3</item>
|
||||
<item name="qmui_topbar_text_btn_color_state_list">@color/qmui_config_color_pure_black</item>
|
||||
<item name="qmui_topbar_image_tint_color">@color/qmui_config_color_pure_black</item>
|
||||
<item name="qmui_tab_normal_color">?attr/qmui_config_color_gray_5</item>
|
||||
<item name="qmui_tab_selected_color">@color/qmui_config_color_pure_black</item>
|
||||
|
||||
<item name="app_primary_color">@color/qmui_config_color_white</item>
|
||||
|
||||
<item name="app_skin_common_img_tint_color">@color/qmui_config_color_pure_black</item>
|
||||
</style>
|
||||
</resources>
|
||||
Reference in New Issue
Block a user