3

Relative Layout で Relative Layout を膨張させたいのですが、膨張していないのは一度だけ膨張しています。コードの問題を教えてください。

活動コード

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);
        }

@Ritabanの提案の後、私がやったことを助けてください

活動コード:

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);
    }

メイン.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>
4

5 に答える 5

3

リニア レイアウトを親ビューとして使用し、 を指定しますandroid:orientation = "vertical"。相対レイアウトは、子の位置が相互または親との関係で記述されるレイアウトです。相対レイアウトを使用する場合は、addruleプロパティを使用する必要があります。そうしないと、すべての子が前の子の上に描画されます。 .

例:

<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>

そして活動中:

  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);
    }
于 2013-09-19T12:15:18.273 に答える
1
// Replace this line
 View view = getLayoutInflater().inflate(R.layout.passenger_details_layout, main,false);
                                             to
 View view = getLayoutInflater().inflate(R.layout.passenger_details_layout, null);                             
于 2013-09-19T12:26:50.240 に答える
1

LayoutInflater が動作し、9 回分のレイアウトが追加されています。ただし、すべてのレイアウトが別の RelativeLayout に追加されているため、すべてのビューを表示することはできません。

そのため、親ビューで Relativelayout の代わりに垂直方向の LinearLayout を使用することを克服するために

于 2013-09-19T12:15:46.487 に答える