在一个Android应用程序,我需要一个视图添加到我的RelativeLayout是遵循以下规则:Android的布局:二次意见
- 的观点应该是二次,即高度和角度的宽度必须匹配。
- 视图应填充整个WIDTH。
它应该是这样的(方应垂直居中):
+-------------+
| activity |
| |
|+-----------+|
|| ||
|| square ||
|| ||
|| ||
|+-----------+|
| |
| |
+-------------+
最后,我想有一个显示的二次图像的ImageView的。目前我通过将视图的宽度和高度都设置为FILL_PARENT来完成此操作,并让ImageView正确绘制图像(使用scaleType = centerInside)。
但是:现在我想要有一个额外的视图与方形视图的顶部对齐,这是我的方法失败的地方。 如果我现在将视图的宽度设置为FILL_PARENT,并将其高度设置为WRAP_CONTENT,则图像将不再适合整个宽度。
你有解决这个问题的办法吗?如果可能的话,这可以通过编写XML来完成,这将是可取的。
提前致谢!
好吧,所以它似乎不可能只是使用XML,但创建自定义布局。我使用了那里描述的SquareLayout,简化了onMeasure方法,并且它完美地工作。不过,我认为基于当前布局管理器的解决方案应该更好,但不幸的是,似乎不支持像我这样的用例...感谢您的帮助! – mreichelt 2011-03-16 18:52:28
是的,我很确定在Java中编写布局是唯一的方法。但至少现在你已经定义了SquareLayout,你可以根据需要多次在你的XML中重用它。 – Nick 2011-03-17 16:48:05