【问题标题】:I want to fit 10 to 12 views in a LinearLayout with equal weight distribution我想在具有相同权重分布的 LinearLayout 中放置 10 到 12 个视图
【发布时间】:2018-03-08 16:44:49
【问题描述】:

我正在学习TextView 并制作生日列表应用程序。我正在学习 udacity。

我将权重调整为 1,高度调整为 0dp,我认为每个 TextView 的间距都会相等。相反,只有 5 个TextViews 能够适应,当我尝试在那里添加更多时,我得到了这个error

这是我的代码:

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black">

<TextView
    android:text="(: BIRTHDAY LIST :)"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textSize="34sp"
    android:textStyle="bold"
    android:textColor="#FFFFFF"
    android:gravity="center"
    />

<TextView
    android:text="Amruta"
    android:layout_width="match_parent" 
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:gravity="center"
    android:background="#F44336"
    android:textStyle="bold"/>
<TextView
    android:text="Didi"
    android:textStyle="bold"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:gravity="center"
    android:background="#C6FF00"
    android:textSize="24sp"  
    android:layout_weight="1"
    />
<TextView
    android:gravity="center"
    android:textStyle="bold"
    android:text="Anushka"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:background="#F8BBD0"
    android:textSize="24sp"  
    android:layout_weight="1"/>
        <TextView
    android:gravity="center"
    android:textStyle="bold"
    android:text="Raj"
    android:layout_width="match_parent"
    android:layout_height="0dp" 
    android:textColor="#FFFFFF"
    android:background="#BA68C8"
    android:textSize="24sp"  
    android:layout_weight="1"
    />
<TextView
    android:gravity="center"
    android:background="#7E57C2"
    android:text="Kunal"
    android:textStyle="bold"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"  
    android:layout_weight="1"
    />
<TextView
    android:gravity="center"
    android:text="Uncle"
    android:textStyle="bold"
    android:background="#3F51B5"
    android:layout_width="match_parent"
   android:layout_height="0dp"
    android:layout_weight="1"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_width="match_parent"

    />
<TextView
    android:text="Aunty"
    android:background="#1E88E5"
    android:textStyle="bold"
    android:gravity="center"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_height="0dp"
    android:layout_weight="1"/>
<TextView
    android:text="Atul"
    android:background="#0288D1"
    android:textStyle="bold"
    android:layout_weight="1"
    android:gravity="center"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"  />
<TextView
    android:text="Papa"
    android:textStyle="bold"
    android:gravity="center"
    android:background="#0097A7"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"  
    android:layout_weight="1"
    />
<TextView
    android:text="Mummy"
    android:background="#00897B"
    android:textStyle="bold"
    android:gravity="center"
    android:layout_width="match_parent"
    android:layout_height="0dp" 
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_weight="1"
    />
</LinearLayout>

【问题讨论】:

  • 您最后是否缺少&lt;/LinearLayout&gt; 标签? 编辑不,它在屏幕截图中,但不在问题代码中。
  • 我认为这种布局也更适合RecyclerView

标签: android android-layout textview android-linearlayout android-layout-weight


【解决方案1】:

第一次发帖很抱歉,如果格式错误,但我已经解决了这个问题。

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black">

<TextView
    android:text="(: BIRTHDAY LIST :)"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textSize="34sp"
    android:textStyle="bold"
    android:textColor="#FFFFFF"
    android:gravity="center"
    />

<TextView
    android:text="Amruta"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:gravity="center"
    android:background="#F44336"
    android:textStyle="bold"/>
<TextView
    android:text="Didi"
    android:textStyle="bold"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:gravity="center"
    android:background="#C6FF00"
    android:textSize="24sp"
    android:layout_weight="1"
    />
<TextView
    android:gravity="center"
    android:textStyle="bold"
    android:text="Anushka"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:background="#F8BBD0"
    android:textSize="24sp"
    android:layout_weight="1"/>
<TextView
    android:gravity="center"
    android:textStyle="bold"
    android:text="Raj"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:background="#BA68C8"
    android:textSize="24sp"
    android:layout_weight="1"
    />
<TextView
    android:gravity="center"
    android:background="#7E57C2"
    android:text="Kunal"
    android:textStyle="bold"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_weight="1"
    />
<TextView
    android:gravity="center"
    android:text="Uncle"
    android:textStyle="bold"
    android:background="#3F51B5"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_width="match_parent"

    />
<TextView
    android:text="Aunty"
    android:background="#1E88E5"
    android:textStyle="bold"
    android:gravity="center"
    android:layout_width="match_parent"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_height="0dp"
    android:layout_weight="1"/>
<TextView
    android:text="Atul"
    android:background="#0288D1"
    android:textStyle="bold"
    android:layout_weight="1"
    android:gravity="center"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"  />
<TextView
    android:text="Papa"
    android:textStyle="bold"
    android:gravity="center"
    android:background="#0097A7"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_weight="1"
    />
<TextView
    android:text="Mummy"
    android:background="#00897B"
    android:textStyle="bold"
    android:gravity="center"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:textColor="#FFFFFF"
    android:textSize="24sp"
    android:layout_weight="1"
    />
</LinearLayout>

您遇到的错误是因为您的 TextViews 中有重复的属性。例如,具有文本“Aunty”的 TextView 有两个实例行

android:layout_height="0dp"

同样,带有文本“Uncle”的 TextView 有两个实例

android:layout_width="match_parent"

【讨论】:

    【解决方案2】:

    删除Textview中带有文本“Uncle”的重复属性android:layout_width="match_parent"。同时删除 Textview 中带有文本“Aunty.”的重复属性 android:layout_height="0dp"

    查看修正版

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多