android - Textview 不显示部分文字

标签 android android-layout

我有一个 TableLayout,其中包括四行 每行有两列。 我在行中显示两个 TextView,一个是静态文本,另一个是可能有超过 20 个字母的动态文本。

其中一个字段是显示电子邮件 ID,在 TextView 中它只显示电子邮件 ID 的一部分,而遗漏了一些文本。

如何在 TextView 中显示整个文本而不遗漏任何字符。

xml如下:

<RelativeLayout
        android:id="@+id/tlbtn"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_above="@id/footer"
        android:layout_below="@id/apt"
        android:layout_marginBottom="10dip"
        android:gravity="center"
        android:orientation="vertical"
        android:padding="10dp">

        <TableLayout
            android:id="@+id/tb"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_marginTop="5dp">

            <TableRow
                android:id="@+id/tableRow1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="10dip">

                <TextView
                    android:id="@+id/id1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="left"
                    android:text="Name :"
                    android:textColor="#707070"
                    android:textSize="15dp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/tname"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10dp"
                    android:gravity="left"
                    android:textSize="15dp"
                    android:textStyle="bold" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="10dip">

                <TextView
                    android:id="@+id/id2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="left"
                    android:text="Employee Id:"
                    android:textColor="#707070"
                    android:textSize="15dp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/tempid"
                    android:layout_width="200dip"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10dp"
                    android:gravity="left"
                    android:maxLines="4"
                    android:textSize="15dp"
                    android:textStyle="bold" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="10dip">

                <TextView
                    android:id="@+id/id3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="left"
                    android:text="Designation :"
                    android:textColor="#707070"
                    android:textSize="15dp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/tdesg"
                    android:layout_width="200dip"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10dp"
                    android:gravity="left"
                    android:maxLines="2"
                    android:textSize="15dp"
                    android:textStyle="bold" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="10dip">

                <TextView
                    android:id="@+id/id4"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="left"
                    android:text="Status :"
                    android:textColor="#707070"
                    android:textSize="15dp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/tstatus"
                    android:layout_width="200dp"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10dip"
                    android:gravity="left"
                    android:maxLines="3"
                    android:textSize="15dp"
                    android:textStyle="bold" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:padding="10dip">

                <TextView
                    android:id="@+id/id5"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="left"
                    android:text="Email Id:"
                    android:textColor="#707070"
                    android:textSize="15dp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/temailid"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10dip"
                    android:ellipsize="end"
                    android:gravity="left"
                    android:inputType="textMultiLine"
                    android:maxLines="3"
                    android:singleLine="false"
                    android:textSize="15dp"
                    android:textStyle="bold" />
            </TableRow>
        </TableLayout>
    </RelativeLayout>

我尝试了各种解决方案,似乎都没有用

最佳答案

您的文本大小为 15 dp,但您的 TextView 宽度仅为 200dip。结果似乎不能在一行上显示超过 20 个字母。我向您推荐三种方法:

  1. 扩展您的 TextView 宽度或减小您的文本大小;
  2. 使用 android:singleLine="false" 将您的 TextView 设置为多行换行文本模式;
  3. 如果你想让它固定大小并在单行中自动滚动 android:ellipsize="marquee"android:marqueeRepeatLimit ="marquee_forever"

关于android - Textview 不显示部分文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20900586/

相关文章:

android - coordinatorlayout 中的 Recyclerview

android - Android 应用中的 Youtube 风格滑动标签布局

java - Android应用程序中的可拖动 float 窗口: Not focusing on layout elements

Android:强制主运行循环在当前执行线程完成之前运行

android - WebKit/WebView tap/onclick 默认高亮(Android Ice Cream Sandwich)

android - 在 Android 中通过 Retrofit 库使用 API

Android SDK 22 - SearchView 渲染问题

java - 谷歌地图缩放级别

多库项目中的 Android Studio proguard 处理

android - android中android :inputType ="textPassword", "textVisiblePassword","textWebPassword"和 "numberPassword"之间的区别?