SpencerChantler123
SpencerChantler123

Reputation: 366

Change Order Of FrameLayout With Java Code

By default, in my current layout, there are two TextViews at the top and one ImageView at the bottom. I would like to change this by having the ImageView to be at the top and the TextViews be at the bottom using Java. Please help.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="2" >

<FrameLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal"
    android:weightSum="2" >

    <TextView
        android:id="@+id/tvText"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:background="@drawable/text_view"
        android:gravity="center"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:textSize="13dp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/tvText2"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:layout_weight="1"
       android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:background="@drawable/text_view"
        android:textSize="13dp"
        android:textStyle="bold"
         />
</LinearLayout>
</FrameLayout>

<FrameLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/ivImage"
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:background="@drawable/text_view"
        android:scaleType="fitXY" />
</LinearLayout>
</FrameLayout>
</LinearLayout>

Upvotes: 0

Views: 741

Answers (1)

KOTIOS
KOTIOS

Reputation: 11194

Here is what i have done :i have added 2 more frame layout in xml and when u click the first text view it will change the view i mean the above frame layout and will show next two.Hope this helps u

public class MainActivity extends Activity

{

    LinearLayout ll;
    TextView tv;

    FrameLayout ff2, ff1, ff3, ff4;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ff1 = (FrameLayout) findViewById(R.id.lay1);
        ff2 = (FrameLayout) findViewById(R.id.lay2);
        ff3 = (FrameLayout) findViewById(R.id.lay3);
        ff4 = (FrameLayout) findViewById(R.id.lay4);
        ff3.setVisibility(View.GONE);
        ff4.setVisibility(View.GONE);

        tv = (TextView) findViewById(R.id.tvText);
        tv.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                ff1.setVisibility(View.GONE);
                ff2.setVisibility(View.GONE);
                ff3.setVisibility(View.VISIBLE);
                ff4.setVisibility(View.VISIBLE);
                Toast.makeText(getApplicationContext(), "layout change",
                        Toast.LENGTH_LONG).show();

            }
        });

    }

}

Here is the layout file :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:weightSum="2" >

    <FrameLayout
        android:id="@+id/lay1"
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="1" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal"
            android:weightSum="2" >

            <TextView
                android:id="@+id/tvText"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@drawable/weed2"
                android:gravity="center"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textSize="13dp"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/tvText2"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@drawable/weed2"
                android:gravity="center"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textSize="13dp"
                android:textStyle="bold" />
        </LinearLayout>
    </FrameLayout>

    <FrameLayout
        android:id="@+id/lay2"
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="1" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal" >

            <ImageView
                android:id="@+id/ivImage"
                android:layout_width="fill_parent"
                android:layout_height="match_parent"
                android:background="@drawable/ic_launcher"
                android:scaleType="fitXY" />
        </LinearLayout>
    </FrameLayout>

    <FrameLayout
        android:id="@+id/lay3"
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="1" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal" >

            <ImageView
                android:id="@+id/ivImage"
                android:layout_width="fill_parent"
                android:layout_height="match_parent"
                android:background="@drawable/ic_launcher"
                android:scaleType="fitXY" />
        </LinearLayout>
    </FrameLayout>

    <FrameLayout
        android:id="@+id/lay4"
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="1" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="horizontal"
            android:weightSum="2" >

            <TextView
                android:id="@+id/tvText"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@drawable/weed2"
                android:gravity="center"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textSize="13dp"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/tvText2"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@drawable/weed2"
                android:gravity="center"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textSize="13dp"
                android:textStyle="bold" />
        </LinearLayout>
    </FrameLayout>

</LinearLayout>

Upvotes: 1

Related Questions