我使用以下样式,正常使用ButtonBlue。在菜单上,样式应更改为ButtonBlue.Big样式如下所示:
<style name="ButtonBlue" parent="android:Widget.Button">
<item name="android:layout_weight">1</item>
<item name="android:backgroundTint">@android:color/holo_blue_bright</item>
</style>
<style name="ButtonBlue.Big" parent="ButtonBlue">
<item name="android:textSize">20sp</item>
</style>
有没有办法将Style更改为多个Button?因为我有31个按钮,如果必须为每个按钮手动更改它,那将会是很多LoC
bt.setTextAppearance(this,R.style.ButtonBlue_Big);
提前致谢
编辑: 我在activity.xml中应用了ButtonBlue Style
<Button
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/buttonInvert"
style="@style/ButtonBlue"
android:id="@+id/buttonInvert"
android:onClick="buttonOnClick"/>
但我的问题是,我不知道如何在Java代码中应用新的Style by Button
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.number_small) {
//apply the Style here
return true;
}
return super.onOptionsItemSelected(item);
}
答案 0 :(得分:0)
将样式设置为XML布局文件中的每个Button。例如:
<Button
style="@style/ButtonBlue.Big"
android:text="@string/myButtonText" />
等
答案 1 :(得分:0)
您可以在所有按钮的布局中执行此操作,
<Button
.....
.....
style="@style/ButtonBlue_Big"
/>
答案 2 :(得分:0)
在res / styles文件夹中创建.xml,并将该文件用作main.xml
中的android样式属性在Google上搜索大量可用的教程。
答案 3 :(得分:0)
您可以按How do I apply a style to all buttons of an Android application将主题应用于应用中的所有按钮。
以编程方式,您无法...检查this