我有一个可以在屏幕上移动的ImageView。问题是当我想要改变ImageView的宽度和高度时,ImageView会重置到它的起始位置然后调整大小。
我希望ImageView保持原样。 有没有办法做到这一点?
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams((int) (200 * scale + 0.5f), (int) (250 * scale + 0.5f));
imageView.setLayoutParams(layoutParams);
答案 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);
我希望这会有所帮助。