使视图内部布局匹配自定义形状的布局

问题描述:

我有一个自定义的半圆衬里布局,我想在其中添加彩色视图,但这些视图与自定义形状不匹配(或停留在衬垫布局的范围内)使视图内部布局匹配自定义形状的布局

当我分配自定义形状的意见

custom shape

当我分配MATCH_PARENT的意见

match parent

我希望视图可以填充衬垫布局的内部,同时保留其形状,有什么办法可以做到这一点?

您无法为视图创建自定义形状。 VIews总是矩形的。如果您的意思是您有自定义背景,那么不会使视图组成为自定义形状,也不会影响组中的视图布局。如果你想这样做,你需要重写onLayout(也可能是onMeasure)并用你期望它们的边界来布局各个孩子。如果你得到一些丑陋的或者非功能性的结果,请不要感到惊讶。不是圆形的。

+0

有没有什么方法可以确保视图不会超出父级?我已经尝试过android:clipChildren =“true”,但这似乎不起作用。 –

+0

他们无法扩展出他们的父母。但他们的父母是一个矩形,而不是你的背景可绘制的形状。 –