动态地将textview放在relativelayout android中的另一个视图上方

时间:2013-03-23 16:32:03

标签: java android layout

嗨,通过做java代码我已经成功地在相对布局中添加了textview,如BOTTOM | RIGHT

但我想将textview放在底部栏布局

之上

这是图像  enter image description here

在这里你可以看到有一个textview有白色背景图像,它的背面有黑底baar我想把textview放在上面的底栏上

以下是我的java代码

 LinearLayout bottomBar = (LinearLayout)findViewById(R.id.bottomBar);
    RelativeLayout.LayoutParams params1 = new RelativeLayout.LayoutParams(150, 70);
    params1.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE);
    params1.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, RelativeLayout.TRUE);
    params1.addRule(RelativeLayout.ABOVE, bottomBar.getId());
    butAddText.setLayoutParams(params1);

通过这样做我添加了左下角但最后两行不起作用我无法在底栏上方添加textview ..

任何人都可以帮助我

2 个答案:

答案 0 :(得分:2)

我怀疑问题在于您设置了2条冲突的规则。

尝试删除下一行:

params1.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE);

原因是:您尝试将视图设置为其父视图的底部,也设置在另一视图的上方。

答案 1 :(得分:0)

最简单的方法可能是模拟嵌套布局:

<LinearLayout ...>
<TextView/>
<RelativeLayout/>
</LinearLayout>

但它可能会降低性能。

修改

首先给你的LinearLayout充气(它的方向是垂直的)然后添加你的TextView和你的底栏。如果你想正确对齐TextView,你可以使用RealtiveLayout代替外部的LinearLayout。