0

在 ViewGroup 中,我想将两个 ImageViews 重叠:imageview A具有透明背景,并且在图像上绘制了一些图像,即imageview B

我希望它们都在同一个地方并且具有相同的大小(但不能在 XML 中修复它们的大小,因为如果 ivB 上的图像发生更改,则 ivA 应该调整大小以匹配新大小。

由于ivA源图像没有改变,我尝试使用 ivA.getWidth() 和ivA .getHeight() 来设置ivB大小,但它们在 onCreate() 方法中的值为 0,0。

有没有一些“简单”的方法可以做到这一点?

4

2 回答 2

1

覆盖 ImageView 并在 onLayout() 中调用 super.onLayout() 后可以获得正确的宽度或高度。尝试在该位置设置值。

于 2012-02-05T02:19:48.213 回答
1

尝试获取尺寸onWindowFocusChangedListener

一种更简单的方法是将 ImageViews 放在 FrameLayout 中(这是为了将 Views 放在另一个之上),然后调整 FrameLayout 的大小。

于 2012-02-05T05:00:58.147 回答