So fügen Sie eine Kopie von XML dynamisch hinzu

Ich erstelle eine Android-App und möchte XML-Code in ein lineares Layout kopieren und ihn erneut in das lineare Layout einfügen, sodass zwei der relativen Layouts im linearen Layout vorhanden sind. Ich möchte dies dynamisch tun, indem ich diesen Code unten nehme:

 <LinearLayout
        android:id="@+id/tileContainerME"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <RelativeLayout
        android:id="@+id/tilesAreHERE"
        android:layout_width="207dp"
        android:layout_height="151dp" >

        <TextView
            android:id="@+id/bottom1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/top1"
            android:layout_alignParentBottom="true"
            android:gravity="center_horizontal"
            android:text="1"
            />

        <TextView
            android:id="@+id/left1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:gravity="center_vertical"
            android:text="2"
             />

        <TextView
            android:id="@+id/right1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/left1"
            android:layout_alignBottom="@+id/left1"
            android:layout_alignParentRight="true"
            android:gravity="center_vertical"
            android:text="3"
           />

        <TextView
            android:id="@+id/top1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:gravity="center_horizontal"
            android:text="4"
             />

    </RelativeLayout>            
    </LinearLayout>

Und dann einfach so machen:

 <LinearLayout
        android:id="@+id/tileContainerME"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        <RelativeLayout
        android:id="@+id/tilesAreHERE"
        android:layout_width="207dp"
        android:layout_height="151dp" >

        <TextView
            android:id="@+id/bottom1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/top1"
            android:layout_alignParentBottom="true"
            android:gravity="center_horizontal"
            android:text="1"
            />

        <TextView
            android:id="@+id/left1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:gravity="center_vertical"
            android:text="2"
             />

        <TextView
            android:id="@+id/right1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/left1"
            android:layout_alignBottom="@+id/left1"
            android:layout_alignParentRight="true"
            android:gravity="center_vertical"
            android:text="3"
           />

        <TextView
            android:id="@+id/top1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:gravity="center_horizontal"
            android:text="4"
             />

    </RelativeLayout>  

        <RelativeLayout
        android:id="@+id/tilesAreHERE"
        android:layout_width="207dp"
        android:layout_height="151dp" >

        <TextView
            android:id="@+id/bottom1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/top1"
            android:layout_alignParentBottom="true"
            android:gravity="center_horizontal"
            android:text="1"
            />

        <TextView
            android:id="@+id/left1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:gravity="center_vertical"
            android:text="2"
             />

        <TextView
            android:id="@+id/right1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/left1"
            android:layout_alignBottom="@+id/left1"
            android:layout_alignParentRight="true"
            android:gravity="center_vertical"
            android:text="3"
           />

        <TextView
            android:id="@+id/top1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:gravity="center_horizontal"
            android:text="4"
             />

    </RelativeLayout>                 
    </LinearLayout>

Sehen Sie, wie es ZWEI RelativeLayout-Abschnitte geben würde ... Ich möchte im Grunde genommen eine Kopie von einem erstellen und sie dann wieder hinzufügen (ich weiß nicht wirklich, wie oft ich dies in meinem Programm tun muss, deshalb habe ich füge es nicht wörtlich in das XML ein, ich würde es gerne aus dem Java Code machen). Dies ist, was ich bisher habe, aber wann immer ich es laufen lasse, ist das Layout falsch. Was könnte an meinem Code falsch sein?

            LinearLayout m3 = (LinearLayout)findViewById(R.id.tileContainerME);
    RelativeLayout m = (RelativeLayout)findViewById(R.id.tilesAreHERE);     
    RelativeLayout m2 = new RelativeLayout(this);

    m2.setLayoutParams(m.getLayoutParams());
    m2.setGravity(m.getGravity());
    m2.setLayoutDirection(m.getLayoutDirection());


    TextView et1 = (TextView) findViewById(R.id.bottom1);
    TextView et2 = (TextView) findViewById(R.id.left1);
    TextView et3 = (TextView) findViewById(R.id.right1);
    TextView et4 = (TextView) findViewById(R.id.top1);

    TextView tv1 = new TextView(et1.getContext());
    TextView tv2 = new TextView(et2.getContext());
    TextView tv3 = new TextView(et3.getContext());
    TextView tv4 = new TextView(et4.getContext());

    tv1.setLayoutDirection(et1.getLayoutDirection());
    tv2.setLayoutDirection(et2.getLayoutDirection());
    tv3.setLayoutDirection(et3.getLayoutDirection());
    tv4.setLayoutDirection(et4.getLayoutDirection());

    tv1.setGravity(et1.getGravity());
    tv2.setGravity(et2.getGravity());
    tv3.setGravity(et3.getGravity());
    tv4.setGravity(et4.getGravity());

    tv1.setText(et1.getText());
    tv2.setText(et2.getText());
    tv3.setText(et3.getText());
    tv4.setText(et4.getText());

    m2.addView(tv4,et4.getLayoutParams());
    m2.addView(tv3,et3.getLayoutParams());
    m2.addView(tv2,et2.getLayoutParams());
    m2.addView(tv1,et1.getLayoutParams());  

    m3.addView(m2);

Ich sehe nicht, was mit meinem Code los ist, irgendwelche Vorschläge ...

DAS IST DIE VOLLE XML-DATENDATEI:

         <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >
  <HorizontalScrollView
        android:id="@+id/scrollHORIZON"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@+id/linearLayout1" >



        <LinearLayout
            android:id="@+id/tileContainerME"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <RelativeLayout
            android:id="@+id/tilesAreHERE"
            android:layout_width="207dp"
            android:layout_height="151dp" >

            <TextView
                android:id="@+id/bottom1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/top1"
                android:layout_alignParentBottom="true"
                android:gravity="center_horizontal"
                android:text="1"
                />

            <TextView
                android:id="@+id/left1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_centerVertical="true"
                android:gravity="center_vertical"
                android:text="2"
                 />

            <TextView
                android:id="@+id/right1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@+id/left1"
                android:layout_alignBottom="@+id/left1"
                android:layout_alignParentRight="true"
                android:gravity="center_vertical"
                android:text="3"
               />

            <TextView
                android:id="@+id/top1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true"
                android:gravity="center_horizontal"
                android:text="4"
                 />

        </RelativeLayout>           
        </LinearLayout>


    </HorizontalScrollView>

</RelativeLayout>

Antworten auf die Frage(4)

Ihre Antwort auf die Frage