gpt4 book ai didi

android - 未定义 layoutweight 属性时 View 消失

转载 作者:行者123 更新时间:2023-11-29 17:43:08 25 4
gpt4 key购买 nike

我有布局(列表项):

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="74dp"
android:background="@drawable/button_background">

<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/list_separator"
android:id="@+id/event_separator"
android:layout_marginLeft="14dp"
android:layout_marginRight="14dp" />

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="73dp"
android:gravity="center_vertical">

<RelativeLayout
android:layout_width="65dp"
android:layout_height="match_parent">

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />

</RelativeLayout>

<TextView
android:id="@+id/event"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:maxLines="2"
android:text="Text text text"
android:textColor="@color/text"
android:textSize="14sp" />

<TextView
android:id="@+id/event_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="2"
android:text="2014.05.13\n16.20:33"
android:textColor="@color/text_faded"
android:textSize="10sp"
android:gravity="center|right"
android:layout_marginRight="14dp"
android:layout_marginEnd="14dp"/>

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/event_delete"
android:src="@drawable/ic_delete" />


</LinearLayout>

</LinearLayout>
  1. 第一个 View 只是列表分隔符
  2. 然后有一个ImageView图标
  3. 文本 TextView (id.event)
  4. 时间戳 TextView (id.event_time)
  5. 另一个图标 'ImageView' (id.event_delete)

它不起作用,我希望得到

[       1      ]
[2][ 3 ][4][5]

但是我明白了

[       1      ]
[2][ 3 ]

4 和 5 不可见(不适合屏幕)。

当我添加 layout_weight="1" 时,它有点工作,但我不知道为什么:

<TextView
android:id="@+id/event"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:maxLines="2"
android:text="Text text text"
android:textColor="@color/text"
android:textSize="14sp"
android:layout_weight="1" />

最佳答案

替换这个

android:layout_width="match_parent" 

通过

android:layout_width="wrap_content"

对于你的 textview @+id/event

您将 textview 宽度指定给 match_parent,这样它将占据所有宽度,因此 4 和 5 不可见

编辑:

<?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="74dp"
android:background="#ffffff"
android:orientation="vertical" >

<View
android:id="@+id/event_separator"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="14dp"
android:layout_marginRight="14dp"
android:background="#000000" />

<LinearLayout
android:layout_width="match_parent"
android:layout_height="73dp"
android:gravity="center_vertical"
android:orientation="horizontal"
android:weightSum="5" >

<RelativeLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" >

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/ic_launcher" />
</RelativeLayout>

<TextView
android:id="@+id/event"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:ellipsize="marquee"
android:maxLines="2"
android:text="Text text text"
android:textColor="#000000"
android:textSize="14sp" />

<TextView
android:id="@+id/event_time"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="14dp"
android:layout_marginRight="14dp"
android:layout_weight="1"
android:gravity="center|right"
android:maxLines="2"
android:text="2014.05.13\n16.20:33"
android:textColor="#000000"
android:textSize="10sp" />

<ImageView
android:id="@+id/event_delete"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/ic_launcher" />
</LinearLayout>

</LinearLayout>

关于android - 未定义 layoutweight 属性时 View 消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27917335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com