getHeight()
的{{1}}和getLayoutParams().height
之间有什么区别?我有一个View
(GoogleAdView),我想隐藏它,我将View
设置为零,但广告的高度(getLayoutParams().height
)不为零。
有没有办法隐藏ad.getHeight()
以便它不占用布局中的空间?
我尝试将其展示次数设置为View
或将GONE
设置为零,但这不起作用。
答案 0 :(得分:19)
LayoutParams.height
是您希望您的视图一旦布局后的高度,可以设置为特定常量,如WRAP_CONTENT,getHeight()
返回实际高度(返回0)直到视图没有布局)。请参阅How Android Draws Views和View - Size, padding and margins。
正如Michael所说,你必须调用requestLayout()。
答案 1 :(得分:5)
隐藏视图并在布局中忽略它的正确方法是使用
setVisibility(View.GONE);
如果这不适合你,你需要找出原因。试图调整尺寸并不是一条好路。
如果您的布局有问题,请在此处发布。