android 按父布局缩放比例动态修改Button原来的margin值
时间: 2024-03-26 22:42:08 浏览: 13
如果你要按照父布局的缩放比例来动态修改Button原来的margin值,可以使用getResources().getDisplayMetrics().density获取屏幕密度,然后将margin值乘以相应的缩放比例即可。以下是示例代码:
```
Button button = findViewById(R.id.my_button);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT
);
int leftMargin = (int) (originalLeftMargin * getResources().getDisplayMetrics().density * scale);
int topMargin = (int) (originalTopMargin * getResources().getDisplayMetrics().density * scale);
int rightMargin = (int) (originalRightMargin * getResources().getDisplayMetrics().density * scale);
int bottomMargin = (int) (originalBottomMargin * getResources().getDisplayMetrics().density * scale);
params.setMargins(leftMargin, topMargin, rightMargin, bottomMargin);
button.setLayoutParams(params);
```
在这个示例中,scale是你想要设置的缩放比例,originalLeftMargin、originalTopMargin、originalRightMargin和originalBottomMargin是Button原来的margin值。这个代码将按照缩放比例动态修改Button的margin值。