设置 ImageButton 尺寸的其他方法
Other way to set a dimension of ImageButton
我在 Android 工作室使用 ImageButton,在代码开发期间我需要更改 ImageButton 的尺寸。
我在上一个问题中找到了部分解决方案。
whosebug.com/questions/10992241/set-imagebutton-height-and-width-in-code
android.view.ViewGroup.LayoutParams params1 = button1.getLayoutParams();
params1.height = size;
params1.width = size;
button1.setLayoutParams(params1);
android.view.ViewGroup.LayoutParams params2 = button2.getLayoutParams();
params2.height = size;
params2.width = size;
button2.setLayoutParams(params2);
android.view.ViewGroup.LayoutParams params3 = button3.getLayoutParams();
params3.height = size;
params3.width = size;
button3.setLayoutParams(params3);
是否有其他方法可以管理 ImageButtons 而无需为所有重复以下代码?
android.view.ViewGroup.LayoutParams params1 = button1.getLayoutParams();
params1.height = size;
params1.width = size;
您可以按顺序命名布局中的按钮(您可以根据需要根据屏幕名称、操作名称更改它们)
赞:button_1
、button_2
、button_3
等
您可以通过这种方式获得此类按钮的列表:
List<ImageButton> toBeResizedButtons() {
ArrayList<ImageButton> buttons = new ArrayList<>();
for (int i = 1; i <= NUMBER_OF_BUTTONS ; i++) {
int id = getResources().getIdentifier("button_" + i, "id", getPackageName());
buttons.add((ImageButton) findViewById(id));
}
return buttons;
}
您可以像这样在一个语句中调整所有这些的大小
for(ImageButton b : toBeResizedButtons()) {
resize(b, size);
}
其中 resize() 假定您有一个固定大小来调整它们的大小。
void resize(View v, int size) {
android.view.ViewGroup.LayoutParams params = v.getLayoutParams();
params.height = size;
params.width = size;
}
我在 Android 工作室使用 ImageButton,在代码开发期间我需要更改 ImageButton 的尺寸。
我在上一个问题中找到了部分解决方案。
whosebug.com/questions/10992241/set-imagebutton-height-and-width-in-code
android.view.ViewGroup.LayoutParams params1 = button1.getLayoutParams();
params1.height = size;
params1.width = size;
button1.setLayoutParams(params1);
android.view.ViewGroup.LayoutParams params2 = button2.getLayoutParams();
params2.height = size;
params2.width = size;
button2.setLayoutParams(params2);
android.view.ViewGroup.LayoutParams params3 = button3.getLayoutParams();
params3.height = size;
params3.width = size;
button3.setLayoutParams(params3);
是否有其他方法可以管理 ImageButtons 而无需为所有重复以下代码?
android.view.ViewGroup.LayoutParams params1 = button1.getLayoutParams();
params1.height = size;
params1.width = size;
您可以按顺序命名布局中的按钮(您可以根据需要根据屏幕名称、操作名称更改它们)
赞:button_1
、button_2
、button_3
等
您可以通过这种方式获得此类按钮的列表:
List<ImageButton> toBeResizedButtons() {
ArrayList<ImageButton> buttons = new ArrayList<>();
for (int i = 1; i <= NUMBER_OF_BUTTONS ; i++) {
int id = getResources().getIdentifier("button_" + i, "id", getPackageName());
buttons.add((ImageButton) findViewById(id));
}
return buttons;
}
您可以像这样在一个语句中调整所有这些的大小
for(ImageButton b : toBeResizedButtons()) {
resize(b, size);
}
其中 resize() 假定您有一个固定大小来调整它们的大小。
void resize(View v, int size) {
android.view.ViewGroup.LayoutParams params = v.getLayoutParams();
params.height = size;
params.width = size;
}