我正在尝试将应用程序中所有 TextView 的大小设置为特定大小。
public void rbFontClicked(View view) {
// Is the button now checked?
boolean checked = ((RadioButton) view).isChecked();
// Check which radio button was clicked
switch(view.getId()) {
case R.id.rbsmall:
if (checked)
//eveysingletextview.setTextSize(12)
everysingleedittext.setTextSize(12)
break;
case R.id.rbmedium:
if (checked)
// do nothing
break;
case R.id.rblarge:
if (checked)
// set dimension to large font,
break;
我将如何引用所有 TextView ?我也需要对 Edittexts 执行此操作,因此我不想单独引用每个 View ,这将花费很长时间。
TIA。
最佳答案
int size = 10;
switch(view.getId()) {
case R.id.rbsmall:
if (checked)
size = 12;
break;
// other case
}
ViewGroup root = (ViewGroup) findViewById(R.id.rootLayout);
int children = root.getChildCount();
for (int i = 0; i < children; i++) {
View view = root.getChildAt(i);
if (view instanceOf TextView) {
TextView tmp = (TextView)view;
view.setText(size);
}
}
它并不优雅,但应该可以工作。检查是否有拼写错误
关于java - 引用所有 TextView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19771627/