android-布局的含义“U权重=”;0“;

android-布局的含义“U权重=”;0“;,android,xml,android-layout,android-view,android-layout-weight,Android,Xml,Android Layout,Android View,Android Layout Weight,我正在使用layout\u weight来指定android中特定viewGroups中各种视图的比率。 从问题的答案中,我对什么是layou-weight有了清晰的概念。我使用普通数学计算视图组中所有视图的大小(即我有3个视图,分别为1,2和3布局权重&所有视图都有布局高度=“0dp”,然后它们的视图组中有1/(1+2+3)、2/(1+2+3)、3/(1+2+3)个空格,以便进行真正对齐)。 但是,layou weight=“0”是什么意思?我如何确定具有layout\u weight=“0”

我正在使用
layout\u weight
来指定android中特定
viewGroups
中各种视图的比率。
从问题的答案中,我对什么是
layou-weight
有了清晰的概念。我使用普通数学计算
视图组中所有
视图的大小(即我有3个
视图,分别为1,2和3
布局权重
&所有视图都有
布局高度
=“0dp”,然后它们的
视图组中有1/(1+2+3)、2/(1+2+3)、3/(1+2+3)个空格,以便进行真正对齐)。

但是,
layou weight
=“0”是什么意思?我如何确定具有
layout\u weight
=“0”的视图大小?

对于所有具有layout\u weight的视图,根据布局的方向和要求,必须将layout\u height或layout\u width设置为0dp

  • layout_weight=“1”和layout_width=“0dp”=>如果没有其他布局相邻,则该特定视图将水平拉伸

  • layout_weight=“0”和layout_width=“100dp”=>特定布局将按原样运行,在这种情况下,布局权重没有任何意义

  • 权重的最佳使用是,当您需要两个高度/宽度相同且彼此相邻的视图时,您可以为布局添加宽度/高度为“0dp”,为布局添加权重为“1”

  • layout\u weight=“0”在xml中并不意味着应该有android:layout\u width=“0dp”所以,如果您想在Linarlayout方向上为所有控件提供相同的空间,我们使用此选项,例如:-如果我们想水平放置3个按钮,我们使用下面的代码

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:weightSum="1">
    
        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.33"/>
        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.33"/>
        <Button
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.33"/>
    
    </LinearLayout>`
    
    
    `
    
    所以我们把它放在这里

    android:weightSum=“1”

    在控制组的重量中做相等的部分。在所有设备中,除Imageview外,它将以正确的方式显示


    对于所有具有布局权重的视图,必须具有布局高度或 布局宽度为0dp,取决于设备的方向和要求 布局


    那是不对的。首先,应用“布局宽度”和“布局高度”参数,视图的大小至少为该尺寸。其次,视图组中的剩余空间将根据视图的权重按比例分配。因此权重“0”意味着在该阶段视图将不会被赋予一些额外的大小。

    所有加权维度的大小必须为0dp。顺便说一下,这是
    layout\u height
    ,而不是
    layout\u weight
    。如果您对解释完全满意,请接受我的回答。问题不是关于
    layout\u width=“0”
    layou height=“0”
    layout\u weight=“/*一些值*/”
    。这是关于
    布局的重要性。