我正在创建一个子类化 RelativeLayout 的自定义布局。我希望它有固定的尺寸,例如,正方形是 250x250,矩形是 300x100,等等。为此,我添加了一个新的 xml 属性,type。在看到布局的类型后,我想调整布局的大小。我尝试从我的类构造函数中执行以下操作:
switch(type)
{
case SQUARE:
setLayoutParams(new MyLayout.LayoutParams(250,250));
break;
case RECTANGLE:
setLayoutParams(new MyLayout.LayoutParams(300,100));
break;
}
然而,这并没有覆盖 xml 文件的高度和宽度。无论如何要从我的布局中实现我想要的,还是必须从父容器进行尺寸更改?