I have a ListView which gets populated with RelativeLayouts. The content of these RelativeLayouts can change and thus change their height respectively. On each RelativeLayou
I fixed by manually set layout during onLayout
for invalid view:
@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
super.onLayout(changed, left, top, right, bottom);
int rootMarginRight = ((MarginLayoutParams)root.getLayoutParams()).rightMargin;
int paddingRight = root.getPaddingRight() + rootMarginRight;
//invalid view
actionsContainer.layout(
right - actions.getWidth() - paddingRight,
0,
right - paddingRight,
getHeight()
);
}