文本视图不可见

Posted

技术标签:

【中文标题】文本视图不可见【英文标题】:TextView not visible 【发布时间】:2015-04-02 01:34:57 【问题描述】:

我写的布局如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_
android:padding="6dip" >

<TextView
    android:id="@+id/icon"
    android:layout_
    android:layout_
    android:layout_alignParentBottom="true"
    android:layout_alignParentTop="true"
    android:layout_marginRight="6dip"
    android:contentDescription="TODO"
    android:background="@drawable/history_unfiled_circle" />

<TextView
    android:id="@+id/secondLine"
    android:layout_
    android:layout_
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:layout_toRightOf="@id/icon"
    android:ellipsize="marquee"
    android:singleLine="true"
    android:text="Description"
    android:textSize="12sp" />

<TextView
    android:id="@+id/firstLine"
    android:layout_
    android:layout_
    android:layout_above="@id/secondLine"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_alignWithParentIfMissing="true"
    android:layout_toRightOf="@id/icon"
    android:gravity="center_vertical"
    android:text="Example application"
    android:textSize="16sp" />

</RelativeLayout> 

它应该是左侧的图标和图标右侧的两行文字。 但 firstLine 不可见。我花了很多时间但无法解决它。希望你的帮助。

更新:其实我想得到这个结果

【问题讨论】:

这个xml的一半看起来像是随机添加的,没有任何理由。保持简单! @bofredo 正如我所更新的,这个 xml 试图得到那个结果。 【参考方案1】:

    你需要设置你的RelativeLayoutandroid:minHeight=?android:attr/listPreferredItemHeightandroid:layout_height=wrap_content,因为你里面的一个文本有固定的高度。

    你的secondLineTextView需要指定android:layout_below="@id/firstLine"

【讨论】:

【参考方案2】:

这是在我的带有虚拟设备 Nexus S 的 Android Studio 上的样子。

还有代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_
android:padding="6dip" >

<ImageView
    android:id="@+id/icon"
    android:layout_
    android:layout_
    android:layout_alignParentBottom="true"
    android:layout_alignParentTop="true"
    android:src="@drawable/black_mana_toggle"
    android:layout_marginRight="10px"
    />

<TextView
    android:id="@+id/secondLine"
    android:layout_
    android:layout_
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:layout_toRightOf="@id/icon"
    android:ellipsize="marquee"
    android:singleLine="true"
    android:text="Description"
    android:textSize="12sp" />

<TextView
    android:id="@+id/firstLine"
    android:layout_
    android:layout_
    android:layout_above="@id/secondLine"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:layout_alignWithParentIfMissing="true"
    android:layout_toRightOf="@id/icon"
    android:gravity="center_vertical"
    android:text="Example application"
    android:textSize="16sp" />
</RelativeLayout>

【讨论】:

谢谢。但在我的真实手机中,它看起来就像我所说的那样。事实上,我在这里需要一个 TextView 而不是 ImageView 并且我已经更新了。【参考方案3】:

这是因为你在一个RelativeLayout。将其更改为 LinearLayout 并且不要忘记添加方向。阅读此文档以了解何时使用 RelativeLayout 以及何时使用 LinearLayout。

http://www.androidhive.info/2011/07/android-layouts-linear-layout-relative-layout-and-table-layout/

编辑:另外,如果你在你的高度(ImageView)上填充_parent,你的 ImageView 将占据整个屏幕。

【讨论】:

正如我所更新的,我想为 ListView 的每个元素获取该结果。而且我不认为 Linearlayout 可以更容易地做到这一点。你对此有什么想法吗?谢谢

以上是关于文本视图不可见的主要内容,如果未能解决你的问题,请参考以下文章

当内容覆盖文本视图中的多行时,有时图像跨度不可见

在搜索城市之前使显示数据文本视图不可见

SAPUI5 XML 视图文本不可见

无法检查我的数组内部的文本视图在 Kotlin 中是不是可见

单击按钮后如何使具有不可见属性“可见”的视图

当tableview单元格变得不可见时如何获取UITextField(UITableViewCell的子视图)文本值