简体   繁体   English

linearLayout中的中心relativeLayout

[英]center relativeLayout in linearLayout

I've a linear layout with inside 3 different relative layout.I want to divide in 3 equals parts this root linear layout.I've set the weight sum to 3 in linear layout and set to 0 the width for each relative.But when i hide one of this relative,the other two are not centered as expected.This is the xml code ` 我有一个线性布局,里面有3个不同的相对布局。我想将这个根线性布局分成3个相等的部分。我已经将线性布局中的权重总和设置为3,每个亲戚的宽度都设置为0。我隐藏了这个亲戚中的一个,其他两个没有按预期居中。这是xml代码

            <RelativeLayout
                android:id="@+id/OffertaBassa"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:visibility="visible" >

                <TextView
                    android:id="@+id/offertaPiuBassa"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentTop="true"
                    android:layout_centerInParent="true"
                    android:layout_gravity="top|center"
                    android:layout_margin="5dp"
                    android:gravity="center"
                    android:text="@string/scheda_dettaglio_richiesta_offerta_migliore"
                    android:textAppearance="?android:attr/textAppearanceSmall"
                    android:textColor="@color/macingo_gabriele_testo"
                    android:textSize="12dp"
                    android:visibility="visible" />

                <TextView
                    android:id="@+id/PrezzoBasso"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/offertaPiuBassa"
                    android:layout_centerInParent="true"
                    android:layout_gravity="center_vertical|center_horizontal|top"
                    android:gravity="center"
                    android:text="€"
                    android:textColor="@color/macingo_drawer_listItem_selected"
                    android:textSize="18sp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/ivaEsclusaLabel"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/PrezzoBasso"
                    android:layout_centerInParent="true"
                    android:layout_gravity="center_vertical|center_horizontal|top"
                    android:text="IVA esclusa"
                    android:textColor="@color/macingo_card_text_light"
                    android:textSize="10sp"
                    android:textStyle="bold" />
            </RelativeLayout>

            <RelativeLayout
                android:id="@+id/NumeroPreventivi"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:visibility="visible" >

                <TextView
                    android:id="@+id/preventiviRicevuti"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentTop="true"
                    android:layout_centerInParent="true"
                    android:layout_gravity="top|center"
                    android:layout_margin="5dp"
                    android:gravity="center"
                    android:text="@string/scheda_dettaglio_richiesta_preventivi_ricevuti"
                    android:textAppearance="?android:attr/textAppearanceSmall"
                    android:textColor="@color/macingo_gabriele_testo"
                    android:textSize="12dp"
                    android:visibility="visible" />

                <TextView
                    android:id="@+id/numeroPreventivi"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/preventiviRicevuti"
                    android:layout_centerInParent="true"
                    android:layout_gravity="center_vertical|center_horizontal|top"
                    android:text="N°"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textColor="@color/macingo_card_text"
                    android:textSize="18sp"
                    android:textStyle="bold" />
            </RelativeLayout>

            <RelativeLayout
                android:id="@+id/prezzoriferimento"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:visibility="visible" >

                <TextView
                    android:id="@+id/prezzoRiferimento"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentTop="true"
                    android:layout_centerInParent="true"
                    android:layout_gravity="top|center"
                    android:layout_margin="5dp"
                    android:gravity="center"
                    android:text="@string/scheda_dettaglio_richiesta_prezzo_riferimento"
                    android:textAppearance="?android:attr/textAppearanceSmall"
                    android:textColor="@color/macingo_gabriele_testo"
                    android:textSize="12sp"
                    android:visibility="visible" />

                <TextView
                    android:id="@+id/prezzoDiriferimento"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/prezzoRiferimento"
                    android:layout_centerInParent="true"
                    android:layout_gravity="center_vertical|center_horizontal|top"
                    android:text="€"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textColor="@color/macingo_card_text"
                    android:textSize="18sp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/TextView1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/prezzoDiriferimento"
                    android:layout_centerInParent="true"
                    android:layout_gravity="center_vertical|center_horizontal|top"
                    android:text="IVA esclusa"
                    android:textColor="@color/macingo_card_text_light"
                    android:textSize="10sp"
                    android:textStyle="bold" />

            </RelativeLayout>
        </LinearLayout>`

How can i solve this situation?I've tried to set gravity but with no result. 我如何解决这种情况?我尝试设置重力,但没有结果。 Thanks 谢谢

You can do something like this. 你可以做这样的事情。

Please go through this Code. 请仔细阅读本守则。

<?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:gravity="center_horizontal"
    android:orientation="vertical"
    android:weightSum="3" >

    <RelativeLayout
        android:id="@+id/OffertaBassa"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:visibility="visible" >

        <TextView
            android:id="@+id/offertaPiuBassa"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_centerInParent="true"
            android:layout_gravity="top|center"
            android:layout_margin="5dp"
            android:gravity="center"
            android:text="scheda_dettaglio_richiesta_offerta_migliore"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="#000000"
            android:textSize="12dp"
            android:visibility="visible" />

        <TextView
            android:id="@+id/PrezzoBasso"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/offertaPiuBassa"
            android:layout_centerInParent="true"
            android:layout_gravity="center_vertical|center_horizontal|top"
            android:gravity="center"
            android:text="€"
            android:textColor="#000000"
            android:textSize="18sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/ivaEsclusaLabel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/PrezzoBasso"
            android:layout_centerInParent="true"
            android:layout_gravity="center_vertical|center_horizontal|top"
            android:text="IVA esclusa"
            android:textColor="#000000"
            android:textSize="10sp"
            android:textStyle="bold" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/NumeroPreventivi"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:visibility="visible" >

        <TextView
            android:id="@+id/preventiviRicevuti"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerInParent="true"
            android:layout_gravity="top|center"
            android:layout_margin="5dp"
            android:gravity="center"
            android:text="scheda_dettaglio_richiesta_preventivi_ricevuti"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="#000000"
            android:textSize="12dp"
            android:visibility="visible" />

        <TextView
            android:id="@+id/numeroPreventivi"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/preventiviRicevuti"
            android:layout_centerInParent="true"
            android:layout_gravity="center_vertical|center_horizontal|top"
            android:text="N°"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="#000000"
            android:textSize="18sp"
            android:textStyle="bold" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/prezzoriferimento"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:visibility="visible" >

        <TextView
            android:id="@+id/prezzoRiferimento"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_centerInParent="true"
            android:layout_gravity="top|center"
            android:layout_margin="5dp"
            android:gravity="center"
            android:text="scheda_dettaglio_richiesta_prezzo_riferimento"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="#000000"
            android:textSize="12sp"
            android:visibility="visible" />

        <TextView
            android:id="@+id/prezzoDiriferimento"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/prezzoRiferimento"
            android:layout_centerInParent="true"
            android:layout_gravity="center_vertical|center_horizontal|top"
            android:text="€"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="#000000"
            android:textSize="18sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/TextView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/prezzoDiriferimento"
            android:layout_centerInParent="true"
            android:layout_gravity="center_vertical|center_horizontal|top"
            android:text="IVA esclusa"
            android:textColor="#000000"
            android:textSize="10sp"
            android:textStyle="bold" />
    </RelativeLayout>

</LinearLayout>

You have to visibility gone of Relative layout. 您必须消除相对布局的可见性。

NumeroPreventivi.setVisibility(View.GONE);

have you visibility gone or invisible of Relative Layout?because if you doing visibility gone of layout then its work perfectly and if you are doing visibility invisible then this layout existence true. 您是否对相对布局的可见性消失了或看不见?因为如果您对布局的可见性消失了,那么它的工作就完美了;如果您对可见性进行了隐藏,那么该布局就成立了。 i mean this layout take area of layout. 我的意思是这种布局占据了布局面积。

at run time you have to change weight sum of layouts. 在运行时,您必须更改布局的权重总和。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 将ImageView(在RelativeLayout内部)居中到LinearLayout(在RelativeLayout外部) - Center an ImageView (inside a RelativeLayout) to a LinearLayout (that is outside the RelativeLayout) 在LinearLayout内将多个RelativeLayout居中 - center multiple RelativeLayout inside LinearLayout 如何在其父级RelativeLayout的中心设置LinearLayout? - How to set LinearLayout at center of it's parent RelativeLayout? 在 wrap_content relativeLayout 的中心放置一个 linearLayout - place a linearLayout in center of a wrap_content relativeLayout 如何以编程方式(动态)将LinearLayout放在RelativeLayout内部? - How to programmatically (dynamically) center a LinearLayout inside a RelativeLayout? Android:如何将LinearLayout在屏幕和RelativeLayout中的按钮之间居中? - Android: How to center a LinearLayout between the screen and a button in RelativeLayout? android:gravity=&quot;center_vertical&quot; 对于RelativeLayout 和LinearLayout 的行为差异 - Difference in behavior of android:gravity="center_vertical" for RelativeLayout and LinearLayout 如何在LinearLayout中嵌套的RelativeLayout中实现重力=“ center_vertical”? - How to achieve gravity=“center_vertical” in a RelativeLayout nested within a LinearLayout? 相对布局中的 Android 重心不像线性布局那样工作 - Android Gravity Center in RelativeLayout Doesn't Work Like LinearLayout 在RelativeLayout的底部对齐LinearLayout - Align a LinearLayout at the bottom of a RelativeLayout
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM