當前位置: 首頁>>代碼示例>>Java>>正文


Java Theme.resolveAttribute方法代碼示例

本文整理匯總了Java中android.content.res.Resources.Theme.resolveAttribute方法的典型用法代碼示例。如果您正苦於以下問題:Java Theme.resolveAttribute方法的具體用法?Java Theme.resolveAttribute怎麽用?Java Theme.resolveAttribute使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在android.content.res.Resources.Theme的用法示例。


在下文中一共展示了Theme.resolveAttribute方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: processAttributes

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
/**
 * Load given attributes to inner variables,
 * 
 * @param context
 * @param attrs
 */
private void processAttributes(Context context, AttributeSet attrs) {
    Theme theme = context.getTheme();
    TypedValue outValue = new TypedValue();
    boolean found = theme.resolveAttribute(R.attr.iconActionCollapse, outValue, true);
    if (found) {
        mIconActionCollapseId = outValue.resourceId;
    }
    found = theme.resolveAttribute(R.attr.iconActionExpand, outValue, true);
    if (found) {
        mIconActionExpandId = outValue.resourceId;
    }
    if (attrs != null) {
        TypedArray a = context.obtainStyledAttributes(attrs,
                R.styleable.FoldableLinearLayout, 0, 0);
        mFoldedLabel = a.getString(R.styleable.FoldableLinearLayout_foldedLabel);
        mUnFoldedLabel = a.getString(R.styleable.FoldableLinearLayout_unFoldedLabel);
        a.recycle();
    }
    // If any attribute isn't found then set a default one
    mFoldedLabel = (mFoldedLabel == null) ? "No text!" : mFoldedLabel;
    mUnFoldedLabel = (mUnFoldedLabel == null) ? "No text!" : mUnFoldedLabel;
}
 
開發者ID:philipwhiuk,項目名稱:q-mail,代碼行數:29,代碼來源:FoldableLinearLayout.java

示例2: ensureListMenuPresenter

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private void ensureListMenuPresenter(Menu menu) {
    if (this.mListMenuPresenter == null && (menu instanceof MenuBuilder)) {
        MenuBuilder mb = (MenuBuilder) menu;
        Context context = this.mDecorToolbar.getContext();
        TypedValue outValue = new TypedValue();
        Theme widgetTheme = context.getResources().newTheme();
        widgetTheme.setTo(context.getTheme());
        widgetTheme.resolveAttribute(R.attr.actionBarPopupTheme, outValue, true);
        if (outValue.resourceId != 0) {
            widgetTheme.applyStyle(outValue.resourceId, true);
        }
        widgetTheme.resolveAttribute(R.attr.panelMenuListTheme, outValue, true);
        if (outValue.resourceId != 0) {
            widgetTheme.applyStyle(outValue.resourceId, true);
        } else {
            widgetTheme.applyStyle(R.style.Theme_AppCompat_CompactMenu, true);
        }
        Context context2 = new ContextThemeWrapper(context, 0);
        context2.getTheme().setTo(widgetTheme);
        this.mListMenuPresenter = new ListMenuPresenter(context2, R.layout.abc_list_menu_item_layout);
        this.mListMenuPresenter.setCallback(new PanelMenuPresenterCallback());
        mb.addMenuPresenter(this.mListMenuPresenter);
    }
}
 
開發者ID:JackChan1999,項目名稱:boohee_v5.6,代碼行數:25,代碼來源:ToolbarActionBar.java

示例3: setStyle

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
void setStyle(Context context) {
    TypedValue outValue = new TypedValue();
    Theme widgetTheme = context.getResources().newTheme();
    widgetTheme.setTo(context.getTheme());
    widgetTheme.resolveAttribute(R.attr.actionBarPopupTheme, outValue, true);
    if (outValue.resourceId != 0) {
        widgetTheme.applyStyle(outValue.resourceId, true);
    }
    widgetTheme.resolveAttribute(R.attr.panelMenuListTheme, outValue, true);
    if (outValue.resourceId != 0) {
        widgetTheme.applyStyle(outValue.resourceId, true);
    } else {
        widgetTheme.applyStyle(R.style.Theme_AppCompat_CompactMenu, true);
    }
    Context context2 = new ContextThemeWrapper(context, 0);
    context2.getTheme().setTo(widgetTheme);
    this.listPresenterContext = context2;
    TypedArray a = context2.obtainStyledAttributes(R.styleable.AppCompatTheme);
    this.background = a.getResourceId(R.styleable.AppCompatTheme_panelBackground, 0);
    this.windowAnimations = a.getResourceId(R.styleable.AppCompatTheme_android_windowAnimationStyle, 0);
    a.recycle();
}
 
開發者ID:JackChan1999,項目名稱:boohee_v5.6,代碼行數:23,代碼來源:AppCompatDelegateImplV7.java

示例4: initializePanelMenu

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private boolean initializePanelMenu(PanelFeatureState st) {
    Context context = this.mContext;
    if ((st.featureId == 0 || st.featureId == 108) && this.mDecorContentParent != null) {
        TypedValue outValue = new TypedValue();
        Theme baseTheme = context.getTheme();
        baseTheme.resolveAttribute(R.attr.actionBarTheme, outValue, true);
        Theme widgetTheme = null;
        if (outValue.resourceId != 0) {
            widgetTheme = context.getResources().newTheme();
            widgetTheme.setTo(baseTheme);
            widgetTheme.applyStyle(outValue.resourceId, true);
            widgetTheme.resolveAttribute(R.attr.actionBarWidgetTheme, outValue, true);
        } else {
            baseTheme.resolveAttribute(R.attr.actionBarWidgetTheme, outValue, true);
        }
        if (outValue.resourceId != 0) {
            if (widgetTheme == null) {
                widgetTheme = context.getResources().newTheme();
                widgetTheme.setTo(baseTheme);
            }
            widgetTheme.applyStyle(outValue.resourceId, true);
        }
        if (widgetTheme != null) {
            Context context2 = new ContextThemeWrapper(context, 0);
            context2.getTheme().setTo(widgetTheme);
            context = context2;
        }
    }
    MenuBuilder menu = new MenuBuilder(context);
    menu.setCallback(this);
    st.setMenu(menu);
    return true;
}
 
開發者ID:JackChan1999,項目名稱:boohee_v5.6,代碼行數:34,代碼來源:AppCompatDelegateImplV7.java

示例5: getColor

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private static int getColor(Context context, int id, int defaultValue) {
    if (value == null)
        value = new TypedValue();

    try {
        Theme theme = context.getTheme();
        if (theme != null && theme.resolveAttribute(id, value, true)) {
            if (value.type >= TypedValue.TYPE_FIRST_INT && value.type <= TypedValue.TYPE_LAST_INT)
                return value.data;
            else if (value.type == TypedValue.TYPE_STRING)
                return context.getResources().getColor(value.resourceId);
        }
    } catch (Exception ex) {
        return defaultValue;
    }

    return defaultValue;
}
 
開發者ID:XhinLiang,項目名稱:MDPreference,代碼行數:19,代碼來源:ThemeUtil.java

示例6: m1771a

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
void m1771a(Context context) {
    TypedValue typedValue = new TypedValue();
    Theme newTheme = context.getResources().newTheme();
    newTheme.setTo(context.getTheme());
    newTheme.resolveAttribute(C0233b.actionBarPopupTheme, typedValue, true);
    if (typedValue.resourceId != 0) {
        newTheme.applyStyle(typedValue.resourceId, true);
    }
    newTheme.resolveAttribute(C0233b.panelMenuListTheme, typedValue, true);
    if (typedValue.resourceId != 0) {
        newTheme.applyStyle(typedValue.resourceId, true);
    } else {
        newTheme.applyStyle(C0242k.Theme_AppCompat_CompactMenu, true);
    }
    Context c0249e = new C0249e(context, 0);
    c0249e.getTheme().setTo(newTheme);
    this.f646l = c0249e;
    TypedArray obtainStyledAttributes = c0249e.obtainStyledAttributes(C0243l.AppCompatTheme);
    this.f636b = obtainStyledAttributes.getResourceId(C0243l.AppCompatTheme_panelBackground, 0);
    this.f640f = obtainStyledAttributes.getResourceId(C0243l.AppCompatTheme_android_windowAnimationStyle, 0);
    obtainStyledAttributes.recycle();
}
 
開發者ID:Qwaz,項目名稱:solved-hacking-problem,代碼行數:23,代碼來源:aq.java

示例7: getColor

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private static int getColor(Context context, int id, int defaultValue){
	if(value == null)
		value = new TypedValue();
	
	try{
		Theme theme = context.getTheme();
		if(theme != null && theme.resolveAttribute(id, value, true)){
               if (value.type >= TypedValue.TYPE_FIRST_INT && value.type <= TypedValue.TYPE_LAST_INT)
                   return value.data;
               else if (value.type == TypedValue.TYPE_STRING)
                   return context.getResources().getColor(value.resourceId);
           }
	}
	catch(Exception ex){

	}
	
	return defaultValue;
}
 
開發者ID:Runly,項目名稱:CircularProgressView,代碼行數:20,代碼來源:ThemeUtil.java

示例8: getColor

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private static int getColor(Context context, int id, int defaultValue){
	if(value == null)
		value = new TypedValue();

	try{
		Theme theme = context.getTheme();
		if(theme != null && theme.resolveAttribute(id, value, true)){
               if (value.type >= TypedValue.TYPE_FIRST_INT && value.type <= TypedValue.TYPE_LAST_INT)
                   return value.data;
               else if (value.type == TypedValue.TYPE_STRING)
                   return context.getResources().getColor(value.resourceId);
           }
	}
	catch(Exception ex){}

	return defaultValue;
}
 
開發者ID:mobvoi,項目名稱:ticdesign,代碼行數:18,代碼來源:ThemeUtils.java

示例9: initOverlay

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private void initOverlay(Context context, Shape shape) {
    // pressed state
    TypedValue typedValue = new TypedValue();
    Theme theme = context.getTheme();

    mPressedOverlay = new ShapeDrawable(shape);
    int overlayColor = Color.parseColor("#aa888888");
    if (theme.resolveAttribute(R.attr.cp_badgeOverlayColor, typedValue, true)) {
        overlayColor = typedValue.data;
    }
    Paint paint = mPressedOverlay.getPaint();
    paint.setColor(overlayColor);
    paint.setStyle(Paint.Style.FILL);
    paint.setAntiAlias(true);
}
 
開發者ID:adithya321,項目名稱:SOS-The-Healthcare-Companion,代碼行數:16,代碼來源:ContactBadge.java

示例10: initSquare

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private void initSquare(Context context) {
    if (mTriangle == null) {
        TypedValue typedValue = new TypedValue();
        Theme theme = context.getTheme();

        // triangle
        Path chipPath = new Path();
        chipPath.moveTo(500f, 0f);
        chipPath.lineTo(500f, 500f);
        chipPath.lineTo(0f, 500f);
        chipPath.close();
        mTriangle = new ShapeDrawable(new PathShape(chipPath, 500f, 500f));
        mTriangle.setDither(true);
        int triangleColor = Color.parseColor("#cc1f1f1f");
        if (theme.resolveAttribute(R.attr.cp_badgeTriangleColor, typedValue, true)) {
            triangleColor = typedValue.data;
        }
        mTriangle.getPaint().setColor(triangleColor);

        // line
        mLinePaint = new Paint();
        int lineColor = Color.parseColor("#ffffffff");
        if (theme.resolveAttribute(R.attr.cp_badgeLineColor, typedValue, true)) {
            lineColor = typedValue.data;
        }
        mLinePaint.setColor(lineColor);
        mOffset = 1.5f * mDensity;
        mLinePaint.setStrokeWidth(mOffset);
    }

    initOverlay(context, new RectShape());
}
 
開發者ID:hwding,項目名稱:templated-messaging,代碼行數:33,代碼來源:ContactBadge.java

示例11: m1681b

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
private boolean m1681b(aq aqVar) {
    Context c0249e;
    C0264i c0264i;
    Context context = this.a;
    if ((aqVar.f635a == 0 || aqVar.f635a == C0243l.AppCompatTheme_ratingBarStyleSmall) && this.f597r != null) {
        TypedValue typedValue = new TypedValue();
        Theme theme = context.getTheme();
        theme.resolveAttribute(C0233b.actionBarTheme, typedValue, true);
        Theme theme2 = null;
        if (typedValue.resourceId != 0) {
            theme2 = context.getResources().newTheme();
            theme2.setTo(theme);
            theme2.applyStyle(typedValue.resourceId, true);
            theme2.resolveAttribute(C0233b.actionBarWidgetTheme, typedValue, true);
        } else {
            theme.resolveAttribute(C0233b.actionBarWidgetTheme, typedValue, true);
        }
        if (typedValue.resourceId != 0) {
            if (theme2 == null) {
                theme2 = context.getResources().newTheme();
                theme2.setTo(theme);
            }
            theme2.applyStyle(typedValue.resourceId, true);
        }
        Theme theme3 = theme2;
        if (theme3 != null) {
            c0249e = new C0249e(context, 0);
            c0249e.getTheme().setTo(theme3);
            c0264i = new C0264i(c0249e);
            c0264i.m2109a((C0203j) this);
            aqVar.m1772a(c0264i);
            return true;
        }
    }
    c0249e = context;
    c0264i = new C0264i(c0249e);
    c0264i.m2109a((C0203j) this);
    aqVar.m1772a(c0264i);
    return true;
}
 
開發者ID:Qwaz,項目名稱:solved-hacking-problem,代碼行數:41,代碼來源:ae.java

示例12: getStyledColor

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
@ColorInt
@UiThread
public static int getStyledColor(Theme theme, @AttrRes int attr) {
    theme.resolveAttribute(attr, TYPED_VALUE, true);
    return TYPED_VALUE.data;
}
 
開發者ID:philipwhiuk,項目名稱:q-mail,代碼行數:7,代碼來源:ThemeUtils.java

示例13: getDrawableRes

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
public static int getDrawableRes(Theme theme, @AttrRes int attr) {
  final TypedValue out = new TypedValue();
  theme.resolveAttribute(attr, out, true);
  return out.resourceId;
}
 
開發者ID:XecureIT,項目名稱:PeSanKita-android,代碼行數:6,代碼來源:ResUtil.java

示例14: getColor

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
/**
 * @param newTheme
 * @return
 */
protected int getColor(Theme newTheme) {
    TypedValue typedValue = new TypedValue();
    newTheme.resolveAttribute(mAttrResId, typedValue, true);
    return typedValue.data;
}
 
開發者ID:liuhui19991,項目名稱:CloudMusicLH,代碼行數:10,代碼來源:ViewSetter.java

示例15: getColor

import android.content.res.Resources.Theme; //導入方法依賴的package包/類
/**
 * 
 * @param newTheme
 * @return
 */
protected int getColor(Theme newTheme) {
	TypedValue typedValue = new TypedValue();
	newTheme.resolveAttribute(mAttrResId, typedValue, true);
	return typedValue.data;
}
 
開發者ID:CarpOrange,項目名稱:CloudMusic,代碼行數:11,代碼來源:ViewSetter.java


注:本文中的android.content.res.Resources.Theme.resolveAttribute方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。