gpt4 book ai didi

android - 如何以编程方式在所有按钮上应用主题?

转载 作者:太空狗 更新时间:2023-10-29 14:02:40 25 4
gpt4 key购买 nike

这是我的按钮:

public class ChimmerButton extends Button {

public ChimmerButton(Context context) {
super(context);
}

public ChimmerButton(Context context, AttributeSet attrs) {
super(context, attrs);
}

public ChimmerButton(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}

/*
* This method is used to apply the external font
*/
public void setTypeface(Typeface tf, int style) {
if (!isInEditMode()) {
super.setTypeface(Typeface.createFromAsset(
getContext().getAssets(), "calibre-regular.ttf"));
}
}
}

如何使用以上代码在所有 chimmerButton 上应用 Theme.Light.NoTitleBar.Fullscreen?有解决办法吗?

最佳答案

Note that this should be called before any views are instantiated in the Context (for example before calling setContentView(View) or inflate(int, ViewGroup)).

来自:

http://developer.android.com/reference/android/view/ContextThemeWrapper.html#setTheme%28int%29

不幸的是,您必须在显示 Activity 之前设置主题。

因此您不能拥有由运行时代码驱动的“动态”主题(尽管上面的评论显示了如何为您的按钮制作自定义主题)

关于android - 如何以编程方式在所有按钮上应用主题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34553486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com