Android minLines 和 maxLines 不能在同一个 TextView 中一起工作
Posted
技术标签:
【中文标题】Android minLines 和 maxLines 不能在同一个 TextView 中一起工作【英文标题】:Android minLines and maxLines aren't working together in same TextView 【发布时间】:2016-05-13 17:51:31 【问题描述】:这里我在 ListView
中只有 1 个项目,我在 ListView
项目的末尾显示了两个不同颜色的 TextViews
。
但问题是我想在每个 TextView
中显示最多 3 行,但如果 TextView
的长度很小,它不会为我提供好的结果。但是如果文本很大,它会很好用。
当我添加android:maxLines="3"
并且文字很小时,它会破坏我的布局,就像
当我添加 android:minLines="2"
并且文本很大时,它会显示完整的文本,例如
给我一个解决这个问题的方法。我的每个TextView
看起来像:
<TextView
android:id="@+id/tv_previous_story"
android:layout_
android:layout_
android:layout_margin="3dp"
android:maxLines="3"
android:textColor="@color/text_color"
android:textSize="@dimen/privacy_text_size" />
【问题讨论】:
我遇到了同样的问题,如果我设置 min 和 max 它只会使它成为最小行长度。你找到解决办法了吗? 请给我看看你的用户界面 【参考方案1】:如果你想修正行数 ex: 3 只需在 xml 中使用 android:lines="3"。
【讨论】:
【参考方案2】:更改android:layout_width="match_parent"
,
<TextView
android:id="@+id/tv_previous_story"
android:layout_
android:layout_
android:layout_margin="3dp"
android:ellipsize="none"
android:maxLines="3"
android:singleLine="false"
android:textColor="@color/black"
android:textSize="@dimen/font_normal_size" />
或
tv_previous_story.setMaxLines(3);
【讨论】:
不幸的是,它不起作用,而且还占用了一些额外的空间 textview 现在有什么问题?@Anshul 如果文本很小,第三行会占用额外的空间,我不希望这样。 删除 android:lines="3" 并检查 @Anshul【参考方案3】:如果您想修复 TextView 文本,请使用:
android:ems="10"
或任何您想要代替 10 的值。
android:ems
或 setEms(n)
将 TextView 的宽度设置为适合 n 'M' 个字母的文本,而不管实际的文本扩展名和文本大小。
【讨论】:
以上是关于Android minLines 和 maxLines 不能在同一个 TextView 中一起工作的主要内容,如果未能解决你的问题,请参考以下文章
跑马灯效果的TextView之singLine 和maxLines
android sdk EditText 的属性milLines设置了数值但没有效果,教程上是有效果,啥原因呢?