gpt4 book ai didi

java - 我可以从我的 java 代码访问和修改 styles.xml 吗?

转载 作者:行者123 更新时间:2023-12-02 05:31:40 25 4
gpt4 key购买 nike

有没有办法可以从我的 java 代码访问和修改 styles.xml 文件中的样式?下面代码中的所有按钮都共享相同的样式,如果我可以以该样式编辑 textSize,那就可以节省一些复制和粘贴的工作。

我想也许使用 R.style.styleName 会以某种方式工作,但无法弄清楚。我在 Google/stackoverflow 上没有找到任何有用的东西。

感谢任何帮助

public void setNumberButtonsSize(float size){
((Button)findViewById(R.id.zero)).setTextSize(size);
((Button)findViewById(R.id.one)).setTextSize(size);
((Button)findViewById(R.id.two)).setTextSize(size);
((Button)findViewById(R.id.three)).setTextSize(size);
((Button)findViewById(R.id.four)).setTextSize(size);
((Button)findViewById(R.id.five)).setTextSize(size);
((Button)findViewById(R.id.six)).setTextSize(size);
((Button)findViewById(R.id.seven)).setTextSize(size);
((Button)findViewById(R.id.eight)).setTextSize(size);
((Button)findViewById(R.id.nine)).setTextSize(size);
}

最佳答案

首先在 style.xml 中定义 customStyle :

 <style name="MyCustomStyle">
<item name="android:textSize">12sp</item>
</style>

然后:

// The attributes you want retrieved
int[] attrs = { android.R.attr.textSize};
// Parse MyCustomStyle, using Context.obtainStyledAttributes()
TypedArray ta = obtainStyledAttributes(R.style.MyCustomStyle, attrs);
// Fetching the textSize defined in your style
int textSize = ta.getInt(0 /* index */, 0 /* defaultVal */);
// OH, and don't forget to recycle the TypedArray
ta.recycle();

关于java - 我可以从我的 java 代码访问和修改 styles.xml 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56199163/

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