How to add views dynamically to a RelativeLayout already declared in the xml layout?

android, android-layout, android-widget

Solution

Add the rule `RelativeLayout.RIGHT_OF` for the second added `Button` `LayoutParams`:

    // first Button
    RelativeLayout rLayout = (RelativeLayout) findViewById(R.id.rlayout);
    RelativeLayout.LayoutParams lprams = new RelativeLayout.LayoutParams(
            RelativeLayout.LayoutParams.WRAP_CONTENT,
            RelativeLayout.LayoutParams.WRAP_CONTENT);
    Button tv1 = new Button(this);
    tv1.setText("Hello");
    tv1.setLayoutParams(lprams);
    tv1.setId(1);
    rLayout.addView(tv1);

    // second Button
    RelativeLayout.LayoutParams newParams = new RelativeLayout.LayoutParams(
            RelativeLayout.LayoutParams.WRAP_CONTENT,
            RelativeLayout.LayoutParams.WRAP_CONTENT);
    Button tv2 = new Button(this);
    tv1.setText("Hello2");
    newParams.addRule(RelativeLayout.RIGHT_OF, 1);
    tv2.setLayoutParams(newParams);
    tv2.setId(2);
    rLayout.addView(tv2);

Problem

I declared a `RelativeLayout` in a xml layout file. Now I want to add `Views` from code to the existing Layout. I added a `Button` dynamically to this existing layout as below through code: ``` rLayout = (RelativeLayout)findViewById(R.id.rlayout); LayoutParams lprams = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); Button tv1 = new Button(this); tv1.setText("Hello"); tv1.setLayoutParams(lprams); tv1.setId(1); rLayout.addView(tv1); ``` Now I need to add another `Button` to the right of the already added `Button`. I am not able to find the way in which I can add the new one to the right of the previously added button.

Original source