我在 RelativeLayout 中有一个 TextView(宽度:fill_parent),我想确保它位于其上方并排的两个视图下方,具有动态宽度和高度。这意味着,有时左视图更高,有时右视图更高。
我试图设置两个“低于”参数,但这当然是不允许的。我尝试通过代码修改它(将 XML 设置在 txt TextView 下面,img 是它旁边的 ImageView):
if (txt.getHeight() + txt.getTop() < img.getHeight() + img.getTop()) {
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.ALIGN_PARENT_LEFT, RelativeLayout.TRUE);
params.addRule(RelativeLayout.BELOW, R.id.image);
txtDetails.setLayoutParams(params);
}
(txtDetails 是我想要在两个视图下方的那个)。
当这不起作用(没有任何改变)时,我将 txtDetails 放在它自己的 RelativeLayout 中,它位于包含两个视图并且有效的 RelativeLayout 下方。但是,我觉得 RL 应该能够处理这种情况,而无需创建新的 RL。可能吗?或者定位这种观点的最佳方式是什么?
谢谢