Android:addView和layout方法不能一起使用

时间:2010-09-09 00:03:13

标签: android layout view

在Android中,当我将像ImageView这样的视图对象添加到FrameLayout视图中,然后立即尝试将layout()方法调用到repositioned the added view object时,它无效。 但是当我在一些新事件之后单独调用布局方法时,例如触摸事件然后layout()似乎工作。这也发生在一起使用bringToFront()和layout()时,layout()似乎不能与其他方法一起工作。这有什么原因吗?而不是在屏幕中间添加视图对象,它可以在FrameLayout中的某个特定位置添加吗?

2 个答案:

答案 0 :(得分:4)

你不应该直接调用layout()。这仅供框架使用。您必须修改View的布局参数(getLayoutParams())并调用requestLayout()。

答案 1 :(得分:1)

试试这个:

FrameLayout.LayoutParams layout = new frameLayout.LayoutParams (LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT,Gravity.BOTTOM);