Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Infalting Relative Layout Android

I want to inflate Relative Layout in a Relative Layout .But it is inflating it only one time after that it is not inflating please help me what is the problem in my code.

Activity Code

LayoutInflater inflater = (LayoutInflater) getBaseContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
RelativeLayout main = (RelativeLayout)findViewById(R.id.passenger_details_layout);

        for(int i=0;i<9;i++){           
            View view = getLayoutInflater().inflate(R.layout.passenger_details_layout, main,false);
            main.addView(view);
        }

After @Ritaban Suggestion and Help this what i have done

Activity Code:

LayoutInflater inflater;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_itineary_page);
        inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        /*
         * LayoutInflater inflater = (LayoutInflater) getBaseContext()
         * .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
         */
        LinearLayout main = (LinearLayout) findViewById(R.id.main_passenger_details_layout);

        for (int i = 0; i < 2; i++) {
            inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            RelativeLayout layout = (RelativeLayout) inflater.inflate(
                    R.layout.passenger_details_layout, main, false);
            main.addView(layout, i);
        }
        RelativeLayout lay = (RelativeLayout) findViewById(R.id.thingstoshowbelow);
        RelativeLayout.LayoutParams params = (android.widget.RelativeLayout.LayoutParams) lay
                .getLayoutParams();
        params.addRule(RelativeLayout.BELOW, R.id.main_passenger_details_layout);
        lay.setLayoutParams(params);
        lay.setVisibility(View.VISIBLE);
    }

Main.XML

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/main_scroll_view"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageView
            android:id="@+id/imgLogo"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginRight="5dip"
            android:padding="3dip"
            android:src="@drawable/logo_demo" />

        <ScrollView
            android:id="@+id/main_scroll_view"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_below="@+id/imgLogo" >

            <RelativeLayout
                android:id="@+id/main_ScrollView_Container"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >

                <RelativeLayout
                    android:id="@+id/trip_details_main"
                    android:layout_width="fill_parent"
                    android:layout_height="70dp"
                    android:background="@drawable/flight_detail"
                    android:gravity="center_vertical" >

                    <TextView
                        android:id="@+id/trip_locations"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentTop="true"
                        android:layout_marginLeft="5dp"
                        android:text="Delhi to Hydrabad"
                        android:textColor="#FFFFFF"
                        android:textSize="20sp"
                        android:textStyle="bold" />

                    <TextView
                        android:id="@+id/depart_date"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/trip_locations"
                        android:layout_marginLeft="5dp"
                        android:text="18 Sep 2013"
                        android:textColor="#FFFFFF"
                        android:textSize="15sp" />

                    <ImageView
                        android:id="@+id/imgRight"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentRight="true"
                        android:layout_marginTop="12dp"
                        android:src="@drawable/cal" />
                </RelativeLayout>

                <RelativeLayout
                    android:id="@+id/travel_itin_header"
                    android:layout_width="fill_parent"
                    android:layout_height="40dp"
                    android:layout_below="@+id/trip_details_main"
                    android:layout_marginTop="2dp"
                    android:background="@drawable/gray"
                    android:gravity="center_vertical" >

                    <TextView
                        android:id="@+id/itinerary_text"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentTop="true"
                        android:layout_marginLeft="90dp"
                        android:layout_marginTop="5dp"
                        android:text="Itinerary Details"
                        android:textColor="#FFFFFF"
                        android:textSize="15sp"
                        android:textStyle="bold" />
                </RelativeLayout>

                <LinearLayout
                    android:id="@+id/main_passenger_details_layout"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/travel_itin_header"
                    android:layout_marginTop="2dp"
                    android:orientation="vertical" >
                </LinearLayout>

                <RelativeLayout
                    android:id="@+id/thingstoshowbelow"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/passenger_details_layout"
                    android:visibility="gone" >

                    <RelativeLayout
                        android:id="@+id/depart_flight_details_duration"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentLeft="true"
                        android:layout_alignParentTop="true"
                        android:layout_marginTop="2dp"
                        android:background="@drawable/small_search" >

                        <ImageView
                            android:id="@+id/flight_depart_image"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignParentLeft="true"
                            android:layout_alignParentTop="true"
                            android:padding="3dip"
                            android:src="@drawable/dep" />

                        <TextView
                            android:id="@+id/depart_return_location"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignTop="@+id/flight_depart_image"
                            android:layout_marginLeft="12dp"
                            android:layout_marginTop="10dp"
                            android:layout_toLeftOf="@+id/arrow_image"
                            android:layout_toRightOf="@+id/flight_depart_image"
                            android:text="Delhi to Hydrabad"
                            android:textColor="#FFFFFF"
                            android:textSize="15sp"
                            android:textStyle="bold" />

                        <TextView
                            android:id="@+id/one_way_date_and_duration_details"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_below="@+id/depart_return_location"
                            android:layout_marginLeft="12dp"
                            android:layout_toRightOf="@+id/flight_depart_image"
                            android:text="18 Sep 2013 09:45 | Duration 2:45"
                            android:textColor="#FFFFFF"
                            android:textSize="12sp" />

                        <ImageView
                            android:id="@+id/arrow_image"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignBottom="@+id/depart_return_location"
                            android:layout_alignParentRight="true"
                            android:layout_marginRight="12dp"
                            android:layout_marginTop="10dp"
                            android:src="@drawable/arrow2" />
                    </RelativeLayout>

                    <RelativeLayout
                        android:id="@+id/travel_agency_header"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/depart_flight_details_duration"
                        android:layout_marginTop="2dp"
                        android:background="@drawable/travelagency_bg" >

                        <TextView
                            android:id="@+id/travel_agency_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignParentTop="true"
                            android:layout_marginLeft="10dp"
                            android:layout_marginTop="5dp"
                            android:text="Travel Agency"
                            android:textColor="#676767"
                            android:textSize="15sp"
                            android:textStyle="bold" />
                    </RelativeLayout>

                    <RelativeLayout
                        android:id="@+id/tarvel_agency_details"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/travel_agency_header"
                        android:layout_marginTop="2dp" >

                        <ImageView
                            android:id="@+id/agent_logo"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginLeft="5dp"
                            android:src="@drawable/uniglobe_logo" />

                        <ImageView
                            android:id="@+id/mobile_logo"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginLeft="8dp"
                            android:layout_marginTop="10dp"
                            android:layout_toRightOf="@+id/agent_logo"
                            android:src="@drawable/mobile" />

                        <ImageView
                            android:id="@+id/at_logo"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginLeft="5dp"
                            android:layout_marginTop="10dp"
                            android:layout_toRightOf="@+id/mobile_logo"
                            android:src="@drawable/at" />

                        <ImageView
                            android:id="@+id/email_logo"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginLeft="5dp"
                            android:layout_marginTop="10dp"
                            android:layout_toRightOf="@+id/at_logo"
                            android:src="@drawable/at" />

                        <TextView
                            android:id="@+id/travel_agency_address"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_below="@+id/agent_logo"
                            android:layout_marginLeft="5dp"
                            android:text="XXXXXXXXXXXXXXXXXXXX"
                            android:textColor="#676767" />

                        <TextView
                            android:id="@+id/travel_agency_fax"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_below="@+id/travel_agency_address"
                            android:layout_marginLeft="5dp"
                            android:layout_marginTop="2dp"
                            android:text="Fax : 2345678"
                            android:textColor="#676767" />
                    </RelativeLayout>

                    <RelativeLayout
                        android:id="@+id/genral_remarks_header"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/tarvel_agency_details"
                        android:layout_marginTop="2dp"
                        android:background="@drawable/general_remar" >

                        <TextView
                            android:id="@+id/genral_remark_header_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignParentTop="true"
                            android:layout_marginLeft="10dp"
                            android:layout_marginTop="5dp"
                            android:text="Genral Remarks"
                            android:textColor="#676767"
                            android:textSize="15sp"
                            android:textStyle="bold" />
                    </RelativeLayout>

                    <RelativeLayout
                        android:id="@+id/genral_remark_text_layout"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_below="@+id/genral_remarks_header"
                        android:layout_marginTop="2dp" >

                        <TextView
                            android:id="@+id/genral_remark_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginLeft="5dp"
                            android:gravity="center_vertical"
                            android:text="HAVE A NICE FLIGHT"
                            android:textColor="#676767" />
                    </RelativeLayout>
                </RelativeLayout>
            </RelativeLayout>
        </ScrollView>
    </RelativeLayout>

</ScrollView>
like image 966
Pooja Dubey Avatar asked Nov 30 '25 14:11

Pooja Dubey


2 Answers

Use Linear layout as the parent View and give android:orientation = "vertical". Relative Layout is a a Layout where the positions of the children are described in relation to each other or to the parent.If you want to use relative layout then you have to use the addrule property or else all the child will be drawn over the previous child.

For ex :

<Linearlayout
            android:id="@+id/passenger_details_layout"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/travel_itin_header"
            android:layout_marginTop="2dp"
            android:gravity="center_vertical"
            android:orientation = "vertical" >
        </Linearlayout>

And in activity:

  LayoutInflater inflater = (LayoutInflater)getBaseContext()
                                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
           LinearLayout main =(LinearLayout)findViewById(R.id.passenger_details_layout);              

    for(int i=0;i<9;i++){           
        View view = inflater.inflate(R.layout.passenger_details_layout, null);
        main.addView(view);
    }
like image 176
Ritaban Avatar answered Dec 08 '25 11:12

Ritaban


LayoutInflater is working and nine time layout is adding. But you cannot see the all views since all Layouts are having adding to another RelativeLayout so they are adding one over the other.

So inorder to overcome that use LinearLayout with orientation vertical instead of Relativelayout in parent view

like image 26
NARESH REDDY Avatar answered Dec 08 '25 13:12

NARESH REDDY



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!