更改相对布局中的现有参数

时间:2014-04-29 11:56:07

标签: android layout layoutparams

我有以下相对布局:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/relativeLayoutScrollableForCentering"
    android:layout_below="@+id/addressOfProvider"
    android:layout_centerHorizontal="true">

我想以编程方式更改属性“layout_centerHorizo​​ntal”。我怎么能这样做?

我不确定要设置哪些布局参数:

RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(
               LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

通过使用:

获得相对布局后,实现我想要的
RelativeLayout relLayoutForCentering = 
    (RelativeLayout)view.findViewById(R.id.relativeLayoutScrollableForCentering);

3 个答案:

答案 0 :(得分:0)

您可以使用addRuleremoveRule方法为RelativeLayout.LayoutParams添加和删除规则:

layoutParams.removeRule(RelativeLayout.CENTER_HORIZONTAL);
layoutParams.addRule(RelativeLayout.CENTER_VERTICAL);

答案 1 :(得分:0)

android:layout_centerHorizo​​ntal不是视图的子属性,而是视图本身的属性

答案 2 :(得分:0)

捕捉布局并设置布局的重力。

RelativeLayout lay=(RelativeLayout)findViewById(R.id.lay);
        lay.setGravity(Gravity.CENTER_HORIZONTAL);