我有一个ImageView,我想在运行时更改它的大小。因此,我执行以下操作:
LayoutParams params = (LayoutParams) imgView.getLayoutParams();
params.width = size;
params.height = size
imgView.setLayoutParams(params);
问题是,基于这些新的宽度和高度,我想更改另一个ImageView,但是好像不是立即应用LayoutParams,因为在setLayoutParams之后放置的Log会打印旧的width值。所以这是一个问题:有没有办法强制ImageView更新(我已经尝试过
View.invalidate()
和View.requestLayout
但没有成功),或者有没有办法检测ImageView是否已完成更新,所以我可以使用它参数? 最佳答案
您可以附加viewTreeObserver
。每次更改布局都会调用哪个
您可以关注this link