2013-02-24 37 views

回答

2

默认大小为0.除非它具有子视图(并且是从定义onLayout的布局类派生的),在这种情况下,默认大小是其子级的总和。如果您想在自定义视图上使用wrap_content,而不仅仅是一个子视图集合,则需要覆盖onLayout和/或onMeasure。

+1

我有一个'View'的子类,它不包含任何其他'View'。我在这个类中填充了一些在“canvas”上绘制的几何图形,所以默认大小应该为0.但是'wrap_content'同时用于'layout_height'和'layout_width',我的视图占据整个屏幕。我的视图中的所有大小都基于该函数的参数在'onSizeChanged()'中设置。 PS:我没有重写'onLayout'和'onMeasure'。 – whatyouhide 2013-02-24 16:49:38