хочу сделать свой RelativeLayout, ширина которого, всегда будет равна высоте, тоесть, он будет квадратным. Для этого наследуюсь от него и переопределяю onMeasure
public class SquareRelativeLayout extends RelativeLayout {
public SquareRelativeLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int h = MeasureSpec.getSize(heightMeasureSpec);
setMeasuredDimension(h, h);
}
}
В разметке пишу:
<hakito.autosim.views.SquareRelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:layout_height="match_parent"
android:background="@drawable/btn_back"
android:clickable="true"
android:padding="2dp">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/image"
/>
</hakito.autosim.views.SquareRelativeLayout>
Layout получается квадратным, как и нужно, но вот все то, что я помещаю внутри него, не отображается. Прижимается левому верхнему углу, а размеры равны нулю, даже если прописывать абсолютные размеры в свойствах.
Пожалуйста, подскажите, как это исправить?