据我所知,Android的视图渲染过程中,根布局将开始测量,并询问每个孩子的尺寸。如果其中一个是Viewgroup本身,它将再次询问孩子,这些孩子只返回他们的设置大小,或者如果他们设置为wrap_content
则计算它。
现在如何使用match_parent
?视图无法计算它的大小,因为它必须首先知道父级的大小,对吧?因此,父母必须计算它自己的大小,然后将其发送给孩子,孩子可以继续使用它自己的布局。
这会使match_parent
比wrap_content
甚至固定的dp值更低效吗?
答案 0 :(得分:1)
实际上,match_parent
说“嗨,父母,我想要像你的剩余可用空间那么大”。例如,如果ViewGroup Parent有两个子节点:子节点在索引处0表示wrap_content
,子B表示索引1表示match_parent
。 A表示他希望宽100px,那么B的宽度将是:父级的总宽度 - 父级的填充 - A的边距 - 100px - B的边缘