Android 缩小RelativeLayout视图后,如何更新其正确大小?
我有一个基于的类,它扩展了FrameLayout。它具有扩展RelativeLayout的类的单个子视图。我已将收缩缩放功能添加到父框架布局,然后更改子相对视图的比例:Android 缩小RelativeLayout视图后,如何更新其正确大小?,android,android-layout,Android,Android Layout,我有一个基于的类,它扩展了FrameLayout。它具有扩展RelativeLayout的类的单个子视图。我已将收缩缩放功能添加到父框架布局,然后更改子相对视图的比例: child().setScaleX(scale); child().setScaleY(scale); 注意:它只允许缩小比例>1,而不允许缩小比例 父FrameLayout也应该随子FrameLayout自动缩小,但它保持与缩小前完全相同的大小。这并不奇怪,因为当我用getMeasuredWidth检查孩子的宽度时,无论缩放
child().setScaleX(scale);
child().setScaleY(scale);
注意:它只允许缩小比例>1,而不允许缩小比例
父FrameLayout也应该随子FrameLayout自动缩小,但它保持与缩小前完全相同的大小。这并不奇怪,因为当我用getMeasuredWidth检查孩子的宽度时,无论缩放前后,它总是2098
为什么子视图的宽度和高度测量值不受其缩放的影响?我如何才能正确地解决这个问题,以便家长也相应地减小其大小?我已经找到了一些可能的解决方案,但如果有更可靠的方法来解决这个问题,我会很感兴趣。我的解决方案是覆盖子对象中的onMeasure,以考虑其规模。问题是,在滚动中用于检测最大滚动范围的getRight和getBottom也完全忽略缩放,并且是最终的,所以不能被覆盖。因此,我必须在每次调用getRight和getBottom时添加刻度,使其变得丑陋且不一致。所以,虽然这对我来说现在很有效,但听到更好的想法会很有意思。澄清一下:getRight和getBottom是我认为需要测量的。在我的具体情况下,我必须保持不变,但需要GeTrand和GutButt也考虑规模,导致我的解决方案,应用规模的所有调用他们的ToDoScVIEWLVIEW。