相关疑难解决方法(0)

Android中的多行TextView?

我确实喜欢下面的内容 xml

<TableRow>
    <TextView android:id="@+id/address1"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:gravity="left"
        android:maxLines="4" 
        android:singleLine="false"              
        android:text="Johar Mor, Gulistan-e-Johar, Karachi" >
    </TextView> 
</TableRow>
Run Code Online (Sandbox Code Playgroud)

它不起作用multiline,我正在使用TableLayout......

那我在这做什么错呢?

android multiline tablelayout textview

142
推荐指数
8
解决办法
28万
查看次数

在TextView上设置Ellipsize可以减少一行显示的行(而不是仅限于最后一行)

当我使用TextViewsingleLine="true"ellipsize="end"(我的前的TextView), 效果很好

但在另一个 TextView有超过1行(在我的情况下,在我的底部3行TextView), lines="3" and maxLines="3" and ellipsize="end", 不能正常工作.

当我没有放入ellipsize="end"tvDesc时,它显示3行,这没关系.这是代码:XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <ImageView
        android:id="@+id/imgv"
        android:layout_width="65dp"
        android:layout_height="80dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:src="@drawable/img1"
        android:scaleType="fitXY" />

    <TextView
        android:id="@+id/tvTitle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@+id/imgv"
        android:background="@android:color/white"
        android:textColor="@android:color/black"
        android:text="Title testing line number and ellipsize at end"
        android:maxLines="1"
        android:singleLine="true"
        android:ellipsize="end"    <---  WORKS WELL
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/tvDesc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/tvTitle"
        android:layout_toRightOf="@+id/imgv"
        android:layout_alignBottom="@+id/imgv"
        android:layout_alignParentRight="true"
        android:textSize="14dp"
        android:lines="3"
        android:maxLines="3"
                       <----------  WITHOUT ellipsize

        android:text="I wanna this …
Run Code Online (Sandbox Code Playgroud)

android ellipsis textview

40
推荐指数
2
解决办法
5万
查看次数

Ellipsize对于具有任意最大高度的多行TextView无法正常工作

我有一个TextView未知的最大高度,这取决于设备的DPI /屏幕分辨率.因此,例如,在on和MDPI设备上,此最大高度可以一次只显示2行,这个值可以增加到未定义的数字.

我的问题与ellipsize功能有关.假设某个设备允许显示4行.如果我手动设置最大行数,就像这样......

<TextView
    android:id="@+id/some_id"
    android:layout_width="fill_parent"
    android:layout_height="0dip"
    android:ellipsize="end" 
    android:maxLines="4"
    android:singleLine="false"
    android:layout_weight="1"
    android:gravity="center_vertical"
    android:text="This is some really really really really really long text"
    android:textSize="15sp" />
Run Code Online (Sandbox Code Playgroud)

......一切正常.如果文本不合适,则在第四行的末尾添加省略号,如下所示:

This is some
really really
really really
really long...
Run Code Online (Sandbox Code Playgroud)

但我宁愿将行数设置为静态变量,因为我更愿意包括对DPI /屏幕分辨率的任何组合的支持.因此,如果我删除maxLines省略号不再在第四行正确显示,则显示文本的不完整部分:

This is some
really really
really really
really long
Run Code Online (Sandbox Code Playgroud)

如果我略微增加TextView大小,我可以看到文本的其余部分仍在"另一个"后面Views.设置变量maxHeight似乎也不起作用.

我真的无法找到解决这个问题的方法.有任何想法吗?如果它有帮助,我只使用Android v4.0.3及更高版本(API级别15).

android ellipsis multiline textview

19
推荐指数
2
解决办法
9312
查看次数

标签 统计

android ×3

textview ×3

ellipsis ×2

multiline ×2

tablelayout ×1