我希望我的图像按钮保持其纵横比,所以我按照 https://stackoverflow.com/a/7966838/135135
并将背景设置为 null,然后将图像按钮源图像设置为 图像按钮. 现在的问题是图像按钮不再像以前那样与父按钮对齐。 如何使其再次与父右边缘对齐?
ImageButton bt = new ImageButton(this);
bt.setImageResource(R.drawable.next_button);
bt.setBackgroundDrawable(null);
bt.setAdjustViewBounds(true);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, RelativeLayout.TRUE);
params.addRule(RelativeLayout.CENTER_VERTICAL, RelativeLayout.TRUE);
bt.setLayoutParams(params);
return bt;
我最终只是在 dp 中硬编码按钮的尺寸。 我搜索了一堆,找不到除此之外有好解决方案的人。