以编程方式设计Android';s复选框

以编程方式设计Android';s复选框,android,checkbox,styling,Android,Checkbox,Styling,我得到了一个扩展活动并以编程方式添加一些视图项的类 CheckBox checkBox = new CheckBox(this, null, android.R.style.Widget_CompoundButton_Star); 我想设置一些样式为androidsdk星星的复选框。在我将其样式设置为小部件\u CompoundButton\u星形之后,我看不到任何复选框。尽管这种SDK风格在直接放入xml时显然是有效的 我是不是遗漏了什么?THX //正如普拉格纳尼所说。使用android.

我得到了一个扩展活动并以编程方式添加一些视图项的类

CheckBox checkBox = new CheckBox(this, null, android.R.style.Widget_CompoundButton_Star);
我想设置一些样式为androidsdk星星的复选框。在我将其样式设置为小部件\u CompoundButton\u星形之后,我看不到任何复选框。尽管这种SDK风格在直接放入xml时显然是有效的

我是不是遗漏了什么?THX


//正如普拉格纳尼所说。使用android.R.attr.starStyle替代它是可行的。

我来到这里,是想为复选框的文本而不是绘图文本设置样式,我通过另一种方式找到了解决方案。但是嘿!让我来分享解决未来问题的方法

而不是:

CheckBox cb = new CheckBox(this, null, R.style.yourstyle);
使用:


希望这有助于解决问题的主题

您可以将样式设置为使用ContextThemeWrapper以编程方式查看

CheckBox mCheckBox = new CheckBox(new ContextThemeWrapper(context, R.style.MyCheckBox));

是否在“活动”视图中添加复选框?再发一些代码是的,我发了。当我使用CheckBox(Context)构造函数时,它可以完美地工作。但是,当在三参数构造函数项中显式设置样式时,不会出现。@Yuri可能会认为该样式不适用于复选框…复选框=(复选框)findViewById(int);使用XML中定义的确切样式工作。因此,我猜该样式与复选框兼容。这是获取视图的一个很好的方法,但它也会导致一个特别的警告W/ResourceType:太多属性引用,停止在:0x01010034,因此可能需要另一种方法来处理它,而不是此。
CheckBox mCheckBox = new CheckBox(new ContextThemeWrapper(context, R.style.MyCheckBox));