setX()和setY()与相对布局中的align规则冲突

时间:2014-01-20 22:15:58

标签: android view relativelayout

现在我实现了自定义相对布局的硬编码,问题是,当我使用相对布局的参数时,它运行良好。但是一旦我添加了setX和setY方法,它们就会发生冲突。我在代码中真正想要的是根据第一个视图的位置逐个动态设置视图。

当我将X设置为50时,在mMapView2保持原始位置的右侧,50宽度消失。

要解决这个问题,我现在唯一可以做的方法就是让我的代码变得单调乏味,因为我在这里有相对布局的很多视图。

    MapView mMapView1 = new MapView(getActivity());
    mMapView1.setX(50);
    mMapView1.setId(1);
    LayoutParams mLayoutParams1 = new LayoutParams(screenWidth/2, screenHeight/3);
    mRelativeLayout.addView(mMapView1, mLayoutParams1);

    MapView mMapView2 = new MapView(getActivity());
    mMapView2.setId(2);
    LayoutParams mLayoutParams2 = new LayoutParams(screenWidth/2, screenHeight/3);
    mLayoutParams2.addRule(RelativeLayout.RIGHT_OF,1);
    mRelativeLayout.addView(mMapView2, mLayoutParams2);

0 个答案:

没有答案