setLayoutParams重置ImageView位置

时间:2015-08-20 08:45:11

标签: android

我有一个可以在屏幕上移动的ImageView。问题是当我想要改变ImageView的宽度和高度时,ImageView会重置到它的起始位置然后调整大小。

我希望ImageView保持原样。 有没有办法做到这一点?

RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams((int) (200 * scale + 0.5f), (int) (250 * scale + 0.5f));
imageView.setLayoutParams(layoutParams);

2 个答案:

答案 0 :(得分:2)

也许你应该这样使用它:

RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) imageView.getLayoutParams();
layoutParams.width = (int) (200 * scale + 0.5f);
layoutParams.height = (int) (250 * scale + 0.5f);
imageView.setLayoutParams(layoutParams); //I think this part might not be needed.

答案 1 :(得分:0)

我认为你需要属性动画师才能实现这一目标。在您的观点中,您应该实现以下内容:

yourView.animate().scaleX(xValue).scaleY(yValue).setDuration(durationMillis);

我希望这会有所帮助。