我有一个 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 个字母。我向您推荐三种方法:
- 扩展您的 TextView 宽度或减小您的文本大小;
- 使用
android:singleLine="false"
将您的 TextView 设置为多行换行文本模式; - 如果你想让它固定大小并在单行中自动滚动
android:ellipsize="marquee"android:marqueeRepeatLimit ="marquee_forever"
关于android - Textview 不显示部分文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20900586/