How to make two different layout to have same height?

戏子无情 提交于 2019-12-23 01:48:08

问题


In My application XML layout, I have one Relativelayout, In which there are two linear Layout. Now I am doing the animation for that both layout. But because thera seems the height different I got some view problem.

So I want to make the same height of the both layout. Below is my XML file.

<!-- ============================================================= -->
            <!-- BOTTLE / PEN LAYOUT -->
            <!-- ============================================================= -->
            <LinearLayout android:layout_height="wrap_content"
                android:layout_width="fill_parent" >

                <RelativeLayout android:layout_height="wrap_content"
                    android:layout_width="fill_parent">
                    <!-- ============================================================= -->
                    <!-- PEN LAYOUT -->
                    <!-- ============================================================= -->
                    <LinearLayout android:orientation="vertical"
                        android:layout_height="wrap_content"
                        android:layout_width="fill_parent"
                        android:id="@+id/pen_layout">

                        <TextView
                            android:text="EF"
                            android:layout_height="wrap_content"
                            android:layout_width="wrap_content"
                            android:layout_gravity="center"
                            android:textColor="#000000"
                            android:layout_marginTop="2dp"
                            android:textSize="10sp"/>

                        <ImageView                 
                            android:id="@+id/save"                 
                            android:layout_width="wrap_content"                 
                            android:layout_height="wrap_content"
                            android:layout_gravity="right"   
                            android:src="@drawable/ink_pen"/>             

                        <TextView
                            android:text="F"
                            android:layout_height="wrap_content"
                            android:layout_width="wrap_content"
                            android:layout_gravity="center"
                            android:textColor="#000000"
                            android:layout_marginTop="2dp"
                            android:textSize="10sp"/>
                        <ImageView                 
                            android:id="@+id/save"                 
                            android:layout_width="wrap_content"                 
                            android:layout_height="wrap_content"
                            android:layout_gravity="right"   
                            android:src="@drawable/ink_pen"/>             

                        <TextView
                            android:text="BOLD"
                            android:layout_height="wrap_content"
                            android:layout_width="wrap_content"
                            android:layout_gravity="center"
                            android:textColor="#000000"
                            android:layout_marginTop="2dp"
                            android:textSize="10sp"/>
                        <ImageView                 
                            android:id="@+id/save"                 
                            android:layout_width="wrap_content"                 
                            android:layout_height="wrap_content"
                            android:layout_gravity="right"   
                            android:src="@drawable/ink_pen"/>             

                        <TextView
                            android:text="ITALIC"
                            android:layout_height="wrap_content"
                            android:layout_width="wrap_content"
                            android:layout_gravity="center"
                            android:textColor="#000000"
                            android:layout_marginTop="2dp"
                            android:textSize="10sp"/>
                        <ImageView                 
                            android:id="@+id/save"                 
                            android:layout_width="wrap_content"                 
                            android:layout_height="wrap_content"
                            android:layout_gravity="right"   
                            android:src="@drawable/ink_pen"/>

                    </LinearLayout> 

                    <!-- ============================================================= -->
                    <!-- BOTTLE LAYOUT -->
                    <!-- ============================================================= -->

                    <LinearLayout android:orientation="vertical"
                        android:layout_height="wrap_content"
                        android:layout_width="fill_parent"
                        android:weightSum="4" 
                        android:id="@+id/bottle_layout">

                        <!-- First Row Bottle -->
                        <LinearLayout android:orientation="horizontal"
                            android:layout_height="wrap_content" android:layout_weight="1"
                            android:layout_width="fill_parent" android:weightSum="2">
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/purple_bottle"/>
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/red_bottle"/>
                        </LinearLayout>

                        <!-- Second Row Bottle -->              
                        <LinearLayout android:orientation="horizontal"
                            android:layout_height="wrap_content" android:layout_weight="1"
                            android:layout_width="fill_parent" android:weightSum="2">
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/gray_bottle"/>
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/green_bottle"/>
                        </LinearLayout>

                        <!-- Third Row Bottle -->               
                        <LinearLayout android:orientation="horizontal"
                            android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="fill_parent" android:weightSum="2">
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/orange_bottle"/>
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/blue_bottle"/>
                        </LinearLayout>

                        <!-- Forth Row Bottle -->               
                        <LinearLayout android:orientation="horizontal"
                            android:layout_height="wrap_content" android:layout_weight="1"
                            android:layout_width="fill_parent" android:weightSum="2">
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/black_bottle"/>
                            <ImageView android:layout_height="wrap_content" android:layout_weight="1"
                                android:layout_width="wrap_content" android:src="@drawable/white_bottle"/>
                        </LinearLayout>

                    </LinearLayout>
                </RelativeLayout>
            </LinearLayout>

回答1:


Delete the containing RelativeLayout (since it is the only child of your root LinearLayout you don't strictly need it) or change it to a LinearLayout.

Then for both the Pen layout and the bottle layout, add the attribute android:layout_weight and set them both to 1.

Make sure that both the layouts have the height set to MATCH_PARENT

Now your two layouts should share the space equally between them, thus making them the same height.

To share the space equally between the children of the Pen and Bottle layouts, I suggest that you set the height of each child to WRAP_CONTENT and the layout_weight of each child to 1.



来源:https://stackoverflow.com/questions/8295556/how-to-make-two-different-layout-to-have-same-height

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!