我想将ImageButton放在我视图的x,y位置。 问题是Android在图像周围添加了填充。 因为我不知道填充的确切大小,所以我无法将图像按钮放在准确的位置。 所以,我想删除填充。 如何以编程方式删除图像周围的填充? button.setPadding(0,0,0,0)使按钮宽度更短,高度比位图长。 button.getLayoutParams()。width给出减去的值。 到目前为止我尝试的是这样的。
protected class MyLayout extends RelativeLayout {
Bitmap img;
ImageButton button;
public MyLayout(Context context) {
button = new ImageButton(context);
img = BitmapFactory.decodeResource(getResources(), R.drawable.img);
button.setImageBitmap(img);
params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
button.setLayoutParams(params);
params.setMargins(x, y, 0, 0);
button.setBackgroundDrawable(null);
addView(button, params);
}
}
答案 0 :(得分:0)
修改强>
使用此...
MarginLayoutParams marginParams = new MarginLayoutParams(image.getLayoutParams());
int left = someValue;
int top = someValue;
marginParams.setMargins(left, top, 0, 0);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(marginParams);
image.setLayoutParams(layoutParams);