翻译,缩放或旋转的子视图消失

时间:2011-02-11 20:18:07

标签: android android-layout

我有ViewGroup,我正在添加子视图,如下所示:

mViewGroup.addView(view, new LayoutParams(LayoutParams.WRAP_CONTENT,
                LayoutParams.WRAP_CONTENT));

WRAP_CONTENT对于onclicklistener按预期工作非常重要。

到目前为止一切顺利,但后来我通过覆盖onDraw方法或覆盖ViewGroups来动态移动子视图:

protected boolean getChildStaticTransformation(View child, Transformation t)

问题在于,如果儿童被移到原来的区域之外就会消失,这似乎是在他们第一次加入时计算出来的。我试着打电话给setClipChildren(false);,但是没有用。

我可以在添加子视图时使用LayoutParams.FILL_PARENT解决问题,但在这种情况下,onClickListener会对整个ViewGroup上的任何点击做出反应,我希望它只做出反应单击我转换后的子视图所在的特定区域。

如果有办法定义LayoutParams.FILL_PARENT的可点击区域,我可能仍然可以使用View

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

也许您应该尝试子视图的边距和填充。否则,您可以尝试使用不同的ViewGroup布局,例如FrameLayout,其中每个视图的位置可以通过其边距设置。